home/work/opencms
BuildingFounder ยท 2026

OpenCMS

A modern open-source headless CMS with the editing UX WordPress made famous and the architecture 2026 actually deserves: edge-native, connector-based, and agent-ready. Every infrastructure concern sits behind a small interface โ€” runtime, database, object storage, cache, and where the admin is hosted โ€” so you pick a connector for each layer and run the same TypeScript self-hosted on Bun and SQLite, in Docker, or on Cloudflare Workers with D1, R2 and KV. Content types are data, not code: they live in the database and are edited from the admin while the app is running. Entries sit in one fixed-schema table with a typed JSON payload, validated on the way in by Zod built from the type definition. Adding a field needs no migration and no deploy; fields flagged indexed get a JSON expression index, so filtered queries stay B-tree lookups. Auth is better-auth on the same database: first signup becomes admin, then signup closes, with editor and admin roles, session cookies, and API keys. Anonymous traffic reads published entries only. The admin SPA ships at the same origin as the API, so sessions work with no CORS to configure. Agents are a first-class surface, not a bolted-on integration: the MCP server at mcp.opencms.dev exposes the same validated content and schema services a human uses, so Claude or Cursor can model types, write entries and publish without opening the dashboard. A connector is done only when it passes the shared conformance suite. MIT licensed.

Visit opencms.dev
OpenCMS cover
  • 5 layersone connector each: runtime, data, storage, cache, hosting
  • 0 migrationscontent types are data โ€” add a field, no deploy
  • MCPsame validated services for humans and agents
Stack
TypeScriptHonoCloudflare WorkersD1BunSQLiteMCPReactbetter-auth