Project · August 2026
Lucidity
A headless content management system for sites built in Nuxt, Next.js, React, Vue, or Svelte.
Overview
Purpose
Give frontend developers a CMS they can plug into Nuxt, Next.js, React, Vue, or Svelte sites without rebuilding content editing for every project.
How it works
An editor signs up, defines content schemas (for example Authors, Pages, Posts), and creates documents against those schemas. Drafts stay private until published. A consuming website authenticates with an API key and queries Lucidity for schema types, navigation pages, and collections. The CMS returns structured JSON that the frontend renders — Lucidity does not host the visitor-facing site; it is the content brain behind it.
Publishing is explicit: unpublished drafts never appear in the public query API. API keys can be rotated from the product UI so a compromised key does not require redeploying the CMS.
Architecture
- Nuxt application for the CMS UI (auth, schema builder, document editor, docs)
- Supabase for authentication and Postgres storage
- Prisma as the data access layer over content schemas and documents
- API-key-protected query endpoints for headless consumers
- Draft vs published status gating on every public read
What you can do
- Sign up / sign in to a CMS workspace
- Define custom content types and fields
- Create, edit, and publish documents
- Separate draft content from live content
- Issue and revoke API keys for frontends
- Query schema types, pages, and collections from an external site
- Read product docs from within the app
Data & access
User accounts authenticate through Supabase Auth. Content and schemas belong to the signed-in workspace. Public website reads use API keys and only receive published documents — never drafts or account details.
Integrations
Deployment
The CMS app is deployed as a Nuxt site on Vercel. Consuming sites call its public query API over HTTPS.
Try Lucidity
Open the live application at lucidity-lac.vercel.app.