Skip to content

Introduction

Arche CMS is a file-based, developer-first, open-source headless CMS. Schema is stored in source files, not in the database — inspired by Strapi and Payload, but designed for type safety, extensibility, and excellent developer experience.

Philosophy

  • Schema as code — your content model lives in TypeScript files, version-controlled alongside your application
  • Code generation — types, APIs, validation, and migrations are auto-generated from schema definitions
  • Zero lock-in — self-hosted, open-source, standard technologies (TypeScript, Fastify, Drizzle ORM)
  • Pluggable by design — every part of the system is extensible via plugins, hooks, and events

Key Features

FeatureDescription
Schema Definition29 field types, collections, globals, components
REST APIAuto-generated CRUD with filtering, sorting, pagination, relation population
GraphQL APIAuto-generated queries and mutations with GraphiQL
OpenAPI SpecAuto-generated OpenAPI 3.1 with Swagger UI
TypeScript SDKAuto-generated typed client for external integrations
ValidationAuto-generated Zod schemas from field definitions
DatabaseSQLite, PostgreSQL, MySQL, Turso, Cloudflare D1
StorageLocal, S3-compatible, Cloudflare R2
AuthJWT with access/refresh tokens, API tokens, forgot/reset password
PermissionsRBAC with field-level access control
PluginsSEO, Audit Log, Webhooks, Search, Comments, Analytics
Admin UIReact 19 dashboard with TanStack Router, TanStack Query, shadcn/ui
CLIdev, build, start, generate, migrate, typegen, lint, doctor

Tech Stack

  • Runtime: Node.js 22+
  • Language: TypeScript (strict mode)
  • API Server: Fastify with Mercurius (GraphQL)
  • Database: Drizzle ORM with adapter pattern
  • Admin UI: React 19, Vite, TanStack Router, TanStack Query, Tailwind CSS v4, shadcn/ui
  • Validation: Zod
  • Auth: JWT (jose)
  • Package Manager: pnpm
  • Repository: Turborepo monorepo

Released under the MIT License.