Blog

Notes from building Easy CMS

Release write-ups, guides for real projects, and the reasoning behind the design. Published from Easy CMS itself.

บทความภาษาไทย →
--pm bun
1,000,000
ReleaseOct 27, 2026

Easy CMS 1.13: built for a million documents

Six releases since 1.7 for collections of a million posts: cursors, Thai search with trigram indexes, HTTP caching, an outbox and search adapters.

Read · 2 min
app1 + app2
GuideOct 25, 2026

Run Easy CMS on several servers with Docker and Postgres

Two Easy CMS instances behind a load balancer, on one Postgres and one bucket, with Docker Compose. Stop either one and the site keeps answering.

Read · 3 min
readyz ✓
ReleaseOct 25, 2026

Easy CMS 1.7: ready to run on several servers

Three releases since 1.4 make Easy CMS ready to run on several servers: Postgres poolers, JSON logs with request ids, health checks, and an official Docker image.

Read · 2 min
jobs ✓
ReleaseOct 18, 2026

Easy CMS 1.4: background work you can see, and safe on several servers

Four releases since 1.0: an admin that shows when it is loading, background work that runs once however many servers you have, and Settings → Jobs.

Read · 2 min
1.0
ReleaseOct 17, 2026

Easy CMS 1.0

Easy CMS 1.0 is out. What 1.0 promises, what it took to get here, and how to upgrade from 0.x.

Read · 2 min
⌘K
ReleaseOct 9, 2026

The new admin

Easy CMS 0.47 rebuilds the admin around a growing site: menu groups, ⌘K, badges, and edit pages with tabs and fields that show when they apply.

Read · 2 min
tenants
ReleaseOct 9, 2026

Multi-tenant sites and a shop

Two new plugins: run several sites or clients from one CMS, and sell from your site with carts, Stripe, PromptPay or bank transfer.

Read · 2 min
upload.folders
ReleaseOct 8, 2026

A media library for real sites

Folders, several files at a time, private folders and files too big for your host's request limit: the media library grew up in 0.38 to 0.41.

Read · 2 min
deploy ✓
ReleaseOct 6, 2026

Deploy Easy CMS in one click

A button that copies a Next.js blog with its admin to your GitHub and deploys it, database and file storage included. You type one thing: a setup code.

Read · 2 min
auth.rbac
ReleaseOct 5, 2026

Roles, single sign-on and an audit log

Easy CMS 0.33 to 0.36 make it ready for teams: roles you set up in the admin, sign-in with your company account, and a record of who changed what.

Read · 2 min
/about/team
ReleaseSep 30, 2026

Nested pages, with paths and breadcrumbs

About → Team → Engineering. The new plugin keeps every path and breadcrumb up to date when a page moves, in every language.

Read · 2 min
<easy-form>
ReleaseSep 29, 2026

Forms and email, built in

Editors build forms in the admin. Submissions are validated on the server, emails retry for a day, and bots meet a honeypot.

Read · 2 min
in-process
EngineeringSep 24, 2026

Why we put the CMS inside your app

A hosted headless CMS is a second service with its own deploy and database. Easy CMS is a package your app mounts instead. Here is what that changes.

Read · 2 min
easy-cms copy
GuideSep 21, 2026

Moving from SQLite to Postgres

Start on a SQLite file, grow into Postgres. One CLI command copies every document, version and user between the two.

Read · 2 min
webhook ✓
GuideSep 17, 2026

Rebuild a static site when an editor publishes

Point a webhook at your host's deploy hook and the site rebuilds when content goes live, and only then.

Read · 2 min