The CMS that lives in your app.
Most headless CMSs are a second system: another server, another bill, another schema to keep in sync. Easy CMS is a package you install, so content ships with the app you already run.
What makes it different
Inside your app
Runs in Next.js or Nuxt, or as a standalone server for any other frontend. One deployment, one database.
Read the docsContent model in code
Collections and fields in TypeScript, reviewed in git, with types for every query.
Read the docsTeam features, free
Roles, field permissions, SSO, an audit log and live preview, all under the MIT license.
Read the docsThai throughout
A complete Thai admin, and Thai docs for every page, next to English.
Read the docsStable since 1.0
- Breaking changes come only in a major release, each with an upgrade guide.
- A renamed API keeps working until the next major, with a warning.
- Every change is tested against databases made by older releases, on SQLite and Postgres.
- Security fixes reach the previous major for six months after the next one is out.
Who it’s for
A CMS you install, not one you run beside your app.
One app, a typed API, content in git
Developers For content & marketing teamsPublish on your schedule, and see it before anyone else does.
Drafts, live preview, SEO, forms
Content & marketing teams For agenciesOne stack for every client site, with nothing to license.
Many client sites, no per-seat fees
AgenciesHow it compares
Honest side-by-sides with the CMSs people ask about most, with sources.
Easy CMS vs Payload
Payload is the closest to Easy CMS: MIT, code-first and installed into your Next.js app. It is far more mature, with a large community. Easy CMS also runs in Nuxt or on its own, and keeps team features such as SSO in the free license.
CompareEasy CMS vs Strapi
Strapi is the most popular open-source headless CMS: a separate Node server with its own admin. Its Community Edition is MIT, while live preview, content history, SSO and audit logs are in paid plans. Easy CMS runs inside your app and keeps those features in the free license.
CompareEasy CMS vs Directus
Directus puts a data studio and APIs on top of any SQL database, with the model built in its interface. Its license is source-available, not OSI open source, and the free Core is capped. Easy CMS is MIT with no caps, and its model lives in your repo.
CompareEasy CMS vs WordPress
WordPress runs a large share of the web, with themes and plugins for almost anything, on PHP and MySQL. Used headless, it is a separate PHP app next to your frontend. Easy CMS keeps everything in your TypeScript app, with a typed content model.
CompareEasy CMS vs Sanity
Sanity pairs an MIT-licensed Studio, configured in code, with a hosted content backend you can't self-host. It is strong at real-time collaboration and visual editing, billed by seats and usage. Easy CMS keeps your content in your own database.
CompareTry it in your own app.
One command sets up a Next.js or Nuxt project with the admin, or deploy a starter to your own Vercel or Netlify.
npm create easy-cms@latest