Branding
Customize your ZShip site’s brand without code changes where possible.
Config file (no rebuild for backend vars)
Section titled “Config file (no rebuild for backend vars)”| Feature | Config File | Fields |
|---|---|---|
| Astro brand identity | apps/web-astro/zship.app.json | appKey, domain, siteUrl, siteName, tagline, description, brand.*, links.*, dashboard.url |
| Nuxt brand identity | apps/web-nuxt/zship.app.json | appKey, domain, siteUrl, siteName, brand.*, links.*, contactEmail |
| Nuxt header / footer | apps/web-nuxt/zship.app.json | header.*, footer.*, dashboard.features.* |
| Dashboard brand | packages/dashboard/config/brand.ts | BRAND_NAME, STORAGE_PREFIX |
| Analytics | apps/web-astro/zship.app.json / apps/web-nuxt/zship.app.json | analytics.googleAnalytics.measurementId, analytics.plausible.*, Nuxt also supports analytics.clarity.projectId |
Analytics (Google Analytics 4 & Plausible)
Section titled “Analytics (Google Analytics 4 & Plausible)”Public pages that use the shared Base layout load scripts from apps/web-astro/src/components/AnalyticsHead.astro. Nothing is injected unless you set valid values in apps/web-astro/zship.app.json under analytics.
Google Analytics 4
Section titled “Google Analytics 4”- Set
analytics.googleAnalytics.measurementIdto your GA4 Measurement ID (formatG-followed by alphanumeric characters). - Leave it empty or omit
googleAnalyticsto disable gtag.js.
Plausible
Section titled “Plausible”- Set
analytics.plausible.domainto the same domain you registered in Plausible (e.g.yoursite.com). - Default script URL is
https://plausible.io/js/script.js. - Self-hosted Plausible: set
scriptSrcto your instance’s script URL (e.g.https://plausible.example.com/js/script.js). - Reverse proxy: set
apiEndpointto your proxied event endpoint; it is emitted as thedata-apiattribute on the script tag.
You can enable GA4, Plausible, both, or neither. Rebuild the web app after changing zship.app.json.
How to rebrand
Section titled “How to rebrand”- Edit
apps/web-astro/zship.app.json— changeappKey,domain,siteName,brand.*,links.*, andanalytics.* - Edit
packages/dashboard/config/brand.ts— changeBRAND_NAME(dashboard sidebar) - Replace
/public/logo.svgand/public/favicon.icowith your assets - For Nuxt apps, edit
apps/web-nuxt/zship.app.json; keepapps/web-nuxt/app/config/site.tsas the manifest adapter
Component overrides
Section titled “Component overrides”Place files in apps/web-astro/src/overrides/ to override shared components without modifying packages. The zship-resolver plugin auto-resolves overrides.
See apps/web-astro/src/overrides/README.md for details.