Overview
Get started with FavorCMS
FavorCMS is a live-site CMS for custom, code-owned websites. Build modular themes, expose only the content regions a site owner should edit, and publish through a tenant-safe platform workflow.
export default section('hero', {
title: text('The live site is the editor.'),
body: text('Owners edit approved content in context.'),
primaryButton: button('Start free', '/signup'),
});
// Deploy the live platform after tests and asset sync:
pnpm run deploy:prod
Product
The public page and the editing surface are the same place.
Owners do not learn a disconnected dashboard for routine changes. They open the real page, select approved text, images, links, repeated items, or SEO fields, save a draft, and publish when the result is ready.
Architecture
Themes stay code-first and modular.
A FavorCMS theme defines route defaults, reusable sections, global header and footer content, collection-backed views, and the styling contract. The CMS does not infer editability from arbitrary markup; the theme declares the contract.
Workflow
Drafts, previews, and production publishing are separate states.
Editors can save work without changing the public site. Published content, draft content, and bootstrap defaults are resolved deliberately so deleting a duplicate section or reverting a draft does not resurrect stale production content.
Operations
Release scope is part of the platform safety model.
Admin-only, marketing-only, tenant-scoped, and full-platform deploys use different scripts because they touch different runtime boundaries. Full platform releases run lint, tests, typecheck, build, asset sync, worker deploys, route checks, and production smoke.
Edit content in context
Editable regions are visible on the actual page, so owners understand what they are changing before they save or publish.
Keep layout control in code
Developers expose specific fields and repeated regions while preserving the surrounding design system and rendering logic.
Centralize metadata output
Titles, descriptions, canonical paths, robots behavior, structured data, sitemaps, and llms.txt stay on platform-owned paths.
Route each site explicitly
Dispatch, worker bindings, domain mapping, theme assets, and smoke checks are designed to prevent one tenant release from leaking into another.