Development quick start
Z-CMS is a TypeScript monorepo built with Node.js, pnpm, Next.js, NestJS, PostgreSQL and Redis.
Requirements
Section titled “Requirements”- Node.js 22+
- pnpm 10+
- Docker
Start locally
Section titled “Start locally”cp .env.example .envpnpm installpnpm bootstrappnpm devBefore submitting a change, run:
pnpm typecheckpnpm lintpnpm testpnpm verifypnpm verify checks critical security invariants such as tenant isolation, sandbox escape resistance and package signing.
Build an extension
Section titled “Build an extension”You do not need this repository to build a plugin or a theme. Install the CLI and scaffold one:
npm install -g @zcmsorg/cli@latestzcms initinit asks whether you are building a plugin or a theme, then writes a project that builds, typechecks, tests, packs and signs with nothing changed — including the two build rules that are otherwise enforced only at runtime, on a live site.
Then follow the workflow that matches what you are building: