@lucidcms/core
v0.15.0-alpha.0
Published
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
Maintainers
Readme

[!CAUTION] Lucid CMS is currently in alpha. The core is licensed under BSL 1.1, with free use for non-commercial projects, education, and non-profits. Commercial licensing and AI access will launch alongside the beta release. Until then, expect breaking changes while APIs and product surfaces are finalized.
Lucid CMS is a TypeScript-first headless CMS for teams that need flexible content modeling, polished editorial workflows, and control over where their content platform runs.
Developers get a code-first collection system, typed APIs for consuming content, runtime and database adapters, and plugin support for shaping Lucid around real project needs. For content teams, Lucid provides a modern editing experience with media management, release review, scheduled publishing, localization, and AI content tools.
✨ Features
- Model content your way: code-defined collections, reusable bricks, custom fields and localization.
- Manage publishing with confidence: environments, revisions, workflow stages, release review, approvals, and scheduled publishing.
- Organize teams and sites: tenants, roles, granular permissions, and client integrations.
- Handle media and email properly: folders, private media, shareable links, image processing, cropping, email logs, previews, and redaction policies.
- Extend it for your project: plugins, service hooks, toolkit, and custom routes let you add content behavior, integrations, and side effects.
- Choose your infrastructure: Node.js or Cloudflare Workers, PostgreSQL, LibSQL, SQLite, D1, queues, KV, email, storage.
- Use AI where it helps: generate and edit images, generate alt text, create custom field values, and track AI usage.
AI features require a subscription with Lucid. This is planned to become publicly available with the beta release.
⚙️ Runtime Adapters
- Node.js for traditional servers, VPS deployments, local development, and full Node runtime access.
- Cloudflare Workers for edge deployments with generated Wrangler configuration, bindings, scheduled handlers, and queue handlers.
💾 Database Adapters
🔌 First-Party Plugins
- Pages: adds hierarchical documents, slugs, parent pages, and computed full slugs for website page collections.
- Filesystem: stores uploaded media on the local filesystem.
- S3: stores media in AWS S3, Cloudflare R2, or another S3-compatible provider.
- Cloudflare R2: uses a Cloudflare R2 binding with optional S3-compatible HTTP fallback.
- Sharp: uses Sharp for Lucid's on-demand image processing.
- Nodemailer: sends email through a custom Nodemailer transport.
- Resend: sends email through Resend and supports Resend webhooks for delivery tracking.
- GitHub Auth: adds GitHub as an authentication provider.
- Google Auth: adds Google as an authentication provider.
- Microsoft Auth: adds Microsoft as an authentication provider.
- Worker Queues: registers a Node worker-thread queue adapter for background jobs and scheduled work.
- Cloudflare Queues: registers a Cloudflare Queues adapter.
- SQLite KV: registers a local SQLite-backed KV adapter.
- Redis: registers a Redis-backed KV adapter.
- Cloudflare KV: registers a Cloudflare KV adapter.
🧩 Framework And Client Packages
- Astro: the official integration for running Lucid alongside Astro.
- Client: typed client for public document, media, and locale endpoints.
- Rich Text: shared Tiptap extensions and rich text conversion utilities.
🏁 Getting Started
Follow the installation guide for the full setup flow.
For a local Node.js project, the smallest useful setup is typically:
npm install @lucidcms/core @lucidcms/runtime-node @lucidcms/db-sqlite @lucidcms/plugin-filesystemThen create a lucid.config.ts file with a runtime, database adapter, secrets, media settings, and collections. SQLite plus the filesystem plugin is the fastest way to explore Lucid locally without external infrastructure.
Or deploy our Cloudflare template by clicking the button below.
📄 Licensing
Lucid CMS uses a mixed-license model:
- The core CMS is licensed under BSL 1.1.
- Each version promotes to MIT after 4 years.
- Runtime adapters, database adapters, plugins, the client, shared types, and rich text utilities are MIT licensed.
- Free use is intended for non-commercial projects, education, and non-profits.
- Commercial use will require a license purchased through the Lucid website once beta launches.
See LICENSE.md for the repository licensing summary.
