Skip to content

One schema, many sites

Agencies run fleets: ten showcase sites that share the same content model (services, projects, testimonials) with different content. In Menestrel the schema lives in code, so reuse is just… code reuse.

Keep one cms.config.ts in a shared package or template repository, and synchronize it to each site with that site’s token:

Terminal window
# each site has its own project in Menestrel, and its own token
cd sites/dupuy-stores && MENESTREL_TOKEN=cmt_adm_xxx menestrel sync
cd sites/baies-stores && MENESTREL_TOKEN=cmt_adm_yyy menestrel sync

Every token is scoped to exactly one project: there is no cross-site token to leak. The sync diff is shown before anything is applied, per site, so a schema change rolls across the fleet at your pace, one confirmed sync at a time.

Two practical tips:

  • Keep site-specific tweaks (an extra field for one client) in the site’s own cms.config.ts by importing the shared base and extending it: it stays plain TypeScript.
  • On the Studio plan, sites created beyond the 10 included ones are added from the Billing screen (+2 EUR/month per site, billed annually).