LumiBaseDocs

LumiBase Documentation

Technical documentation for LumiBase — an Edge-native Content Operating System (Content OS): where AI agents operate content while humans set intent, define taste, and hold ultimate accountability. Runs on both Cloudflare Workers and self-hosted Docker through a shared runtime abstraction layer.

As of v0.5.0, LumiBase is redefined from a Content Management System → a Content Operating System: the unit of work is intent (intent/SLO), content is continuously reconciled toward the desired state, agents earn autonomy by level (L0–L4), and every byte of content has provenance. See ai-native-vision.md.

Goal: surpass Directus in No-code Collection Builder, field-level / JSON-policy Permissions, a Raw editor for every field, a safe Extension SDK (with a signed Marketplace), Display Templates, Realtime WebSocket, and an AI-First Copilot (HITL) — while keeping LumiBase's Edge-native, Multi-tenant DNA but allowing self-hosting on Docker when needed.

Quick start

  • getting-started.md — Bootstrap a new LumiBase project with npm create lumibase@latest (the create-lumibase CLI), from an empty folder to a running server (Docker or Cloudflare Workers).

Tutorials

  • tutorials/index.md — Catalog of end-to-end tutorials for newcomers.
  • tutorials/nextjs-quickstart.mdRender LumiBase content in a Next.js app: run the CMS locally, create a posts collection, then fetch & render with plain fetch or @lumibase/sdk.

Agent Setup (for AI agents)

Documentation structure

Monorepo apps & packages

  • apps/cms — The Hono API, built for both Cloudflare Workers (Wrangler) and Node.js (Docker container).
  • apps/studio — The admin SPA (React + Vite + TanStack Router). AI Copilot panel + Access Control + Content + Files + Settings + Translations + Users modules.
  • apps/docs — A Vite docs viewer that serves this docs/ on the web (port 5174 in dev).
  • apps/landing — The Next.js landing page (lumibase.dev).
  • apps/consumer — A Next.js demo consumer (delivery API + SDK usage example), replacing the old apps/web.
  • packages/database — Drizzle ORM schema + migrations (Postgres).
  • packages/runtime — The abstraction layer (CacheProvider, StorageProvider, DatabaseProvider, SearchProvider, QueueProvider, MediaProcessor) with two adapter sets (Cloudflare and Docker).
  • packages/ai-skills — The skill registry for the AI Copilot (CORE_SKILLS) + OpenAI-compatible tool definitions.
  • packages/shared — Types, zod schemas, the policy DSL, the field DSL.
  • packages/sdk — The JS SDK (REST + WS + typegen).
  • packages/ui — shadcn components + CVA tokens.
  • packages/extension-sdk — Types and helpers for developers writing extensions.
  • packages/create-lumibase — The bootstrap CLI (npm create lumibase@latest) that generates a new LumiBase project from a Docker or Cloudflare Workers template. See getting-started.md.
  • packages/mcp-server — The MCP stdio server (@lumibase/mcp-server) exposing tools for AI assistants to create/manage collections, fields, and items.

Principles for reading the documentation

  1. Config-as-Code first: every collection/field/permission can be exported/imported as JSON/YAML (see apps/cms/scripts/config-cli.ts).
  2. Multi-tenant: every domain entity has a site_id, and every query/cache key includes site_id.
  3. Edge-friendly but not Cloudflare-locked: business-logic code does not depend directly on KV/R2/Hyperdrive — it goes through @lumibase/runtime so it also runs on Docker.
  4. 1-roundtrip: the Studio and Delivery APIs prefer returning aggregated payloads.
  5. Backward-compat: every schema change must go through the revision/migration system.
  6. HITL for AI: dangerous AI actions (schema:write, delete*) must always go through the approval workflow in the ai_approvals table.
Last modified: 23/07/2026