FlowCMS is a modern, headless Content Management System (CMS) built with Next.js, TypeScript, Prisma ORM, and Supabase PostgreSQL.
- Content Management: Structured and visual collections for managing entries, media, and environments.
- Authentication: Powered by Better Auth with support for email/password and OAuth (Google).
- Database & Pooling: Prisma ORM with
@prisma/adapter-pgconfigured for Supabase Supavisor connection pooling. - API & Webhooks: Headless API endpoints (
/api/v1) with background webhook delivery powered by Upstash QStash. - Billing & Usage: Integrated Razorpay billing and rate limiting via Upstash Redis.
- Framework: Next.js 15 (App Router, React 19)
- Language: TypeScript
- ORM: Prisma ORM 7 with
@prisma/adapter-pg - Database: Supabase PostgreSQL with Supavisor Pooler
- Monorepo Engine: Turborepo & pnpm
- UI & Styling: Tailwind CSS, Radix UI / Base UI, Motion, Lucide Icons
- Node.js
>=18(Node 22 LTS recommended) - pnpm
^9.0.0(corepack enable pnpm)
-
Clone the repository:
git clone https://github.com/kjxcodez/FlowCMS.git cd FlowCMS -
Install dependencies:
pnpm install
-
Configure Environment Variables: Copy
.env.exampleto.envinapps/app:cp apps/app/.env.example apps/app/.env
-
Generate Prisma Client:
cd apps/app && pnpm prisma generate
-
Run Development Server: From the repository root:
pnpm dev
Open http://localhost:3000 in your browser.
pnpm dev: Run local development serverpnpm build: Build all packages for productionpnpm lint: Run ESLint checkspnpm check-types: Run TypeScript compiler type checking (tsc --noEmit)
- Please read CONTRIBUTING.md for development rules and guidelines.
- To report security vulnerabilities, review SECURITY.md.