Skip to content

Releases: maritonx/easy-cms

Easy CMS 1.0.1

Choose a tag to compare

@maritonx maritonx released this 17 Oct 12:06
f7c4013

A patch release: every package is 1.0.1, and only @easy-cms/core and @easy-cms/admin change.

Fixed

  • Settings → Email no longer says a test email was sent when nothing was. With consoleEmail() (or any adapter whose describe() says delivery: log), Send test email used to answer { "ok": true }, headed "Sent to …" in green. A live site that had lost its SMTP_HOST looked as if mail went out. Now the answer is { "ok": true, "logged": true }, the admin shows Not sent in warning colours with how to set up a real adapter, and a warning sits above the settings. (#142)

Docs

  • New recipe: Move from WordPress (ภาษาไทย). A script imports posts, pages, categories and images through the WordPress REST API and adds a 301 from every old address, Thai slugs included. You can run it again until launch day. (#141)

Upgrade

npm install @easy-cms/core@latest easy-cms@latest  # and your adapter, plugins…

No migration is needed.

Easy CMS 1.0.0

Choose a tag to compare

@maritonx maritonx released this 17 Oct 10:49
4ce1a3a

Easy CMS 1.0 is out: the first version meant for production use. It is the embedded,
code-first headless CMS for Next.js and Nuxt (or on its own server): your content model is
TypeScript in your repository, and the admin, a typed Local API and REST come with your app, on
one deployment and your own database.

Get it

# A new project, or add it to a Next.js or Nuxt one
npm create easy-cms@latest

# Upgrading from 0.x: back up, then every package together
npm install @easy-cms/core@latest easy-cms@latest  # and your adapter, plugins…
npx easy-cms migrate

Upgrading from 0.x: follow From 0.x to 1.0.
Most apps only change their config; the app names each renamed option when it starts.

What 1.0 promises

  • Breaking changes only in a major release (2.0), each with an upgrade guide. Minor releases
    add features; patch releases fix bugs.
  • Covered: the config, the Local API, REST routes and error codes, the CLI, adapters, and your
    data: upgrades migrate it forward, and CI upgrades databases made by releases back to 0.10 on
    every commit.
  • Renamed APIs keep working until the next major, with a deprecation warning.
  • Support: 0.x is no longer supported. Security fixes go to the latest 1.x minor; when 2.0
    comes out, 1.x gets security fixes for six more months.
  • Experimental: @easy-cms/plugin-ecommerce, @easy-cms/plugin-graphql and
    @easy-cms/plugin-mcp may still change in a minor release until they are declared stable.

Details: Versions and deprecations.

How it got here

The road to 1.0 (roadmap) added
no features. It settled the API (0.60), went through a self-review against OWASP ASVS level 1
and fixed what it found (0.62–0.66, with published advisories), tested the experimental plugins
against real services and clients (Stripe, urql with codegen, Claude), and checked Getting
started word for word on a clean Ubuntu 26.04 with npm, pnpm, Yarn and Bun.

Since 1.0.0-rc.0

No changes since the release candidate: 1.0.0 is 1.0.0-rc.0 with its final version number.

Thank you

To everyone who tried the release candidate and reported back in
the feedback issue.


ภาษาไทย: Easy CMS 1.0 ออกแล้ว เป็นเวอร์ชันแรกที่พร้อมใช้งานจริง ตั้งแต่ 1.0 การเปลี่ยนแบบ breaking มีเฉพาะใน major
release พร้อมคู่มืออัปเกรด เริ่มใช้ด้วย npm create easy-cms@latest อัปเกรดจาก 0.x ตาม
คู่มือ "จาก 0.x ไป 1.0" และอ่านสิ่งที่ 1.0
สัญญาไว้ได้ในหน้าเวอร์ชันและการเลิกใช้

Easy CMS 1.0.0-rc.0

Easy CMS 1.0.0-rc.0 Pre-release
Pre-release

Choose a tag to compare

@maritonx maritonx released this 17 Oct 08:54

The first release candidate of Easy CMS 1.0, the first version meant for production use.
Please try it and tell us how it went in the feedback issue.
1.0.0 is planned for 2026-12-15.

Try it

The release candidate is on the rc tag; latest stays on 0.68 until 1.0.0.

# A new project (pnpm, Yarn 4 and Bun: `pnpm create easy-cms@rc`…;
# Yarn 1: `npx create-easy-cms@rc --pm yarn`)
npm create easy-cms@rc

# An existing one: every package together
npm install @easy-cms/core@rc @easy-cms/db-sqlite@rc easy-cms@rc  # and your adapter, plugins…
npx easy-cms migrate

Upgrading from 0.x? Back up first and follow
From 0.x to 1.0: what changed, a
checklist of the changes that don't stop your app, and the steps.

What 1.0 promises

From 1.0, breaking changes come only in a major release, with an upgrade guide; minor releases
add features and patch releases fix bugs. The promise covers the config, the Local API, REST
routes and error codes, the CLI, adapters, and your data: upgrades migrate it forward, and CI
upgrades databases made by releases back to 0.10 on every commit. Renamed APIs keep working until
the next major, with a warning. Details: Versions and
deprecations
.

Not covered yet: @easy-cms/plugin-ecommerce, @easy-cms/plugin-graphql and
@easy-cms/plugin-mcp are experimental.
They are tested with real services and clients (Stripe, urql with codegen, Claude), but may
still change in a minor release until they are declared stable.

Since 0.48

  • API settled (0.60): consistent names across config, Local API, REST and plugins;
    apiVersion for plugins; deprecation warnings for old names.
  • Security (0.62–0.66): a self-review against OWASP ASVS level 1. Common passwords refused,
    __Host- cookies and HSTS, 404 for documents you can't read, encrypted backups, GraphQL
    introspection off in production, SMTP over TLS, tenant-aware audit log.
  • Plugins ready for production (0.67–0.68): a fixed Stripe API version, GraphQL with
    graphql 16 and 17 as a peer, MCP tested through the SDK client and with Claude, React and Vue
    shop hooks tested.
  • Fixes found on the way: <easy-form> kept in production bundles; useAddresses() without
    unhandled rejections; payment methods in the page's language; direct uploads of large files.

The full list is in each package's CHANGELOG.

Help test

  • Follow Getting started on a fresh
    project with Next.js, Nuxt or the standalone server, and tell us where it doesn't match.
  • Upgrade a real 0.x project with the guide above.
  • Security issues: please report them privately, as in
    SECURITY.md.

ภาษาไทย: Easy CMS 1.0.0-rc.0 คือ release candidate ตัวแรกของ 1.0 ลองได้ด้วย npm create easy-cms@rc
อัปเกรดจาก 0.x ตามคู่มือ "จาก 0.x ไป 1.0" และอ่านสิ่งที่ 1.0
สัญญาไว้ได้ในหน้าเวอร์ชันและการเลิกใช้ เจออะไรพัง
แจ้งใน GitHub ได้เลย 1.0.0 มีแผนออกวันที่ 2026-12-15