For engineers and agent workflows
Architecture and DX that stay legible at real scale
This page is the deep cut: how the monorepo is sliced, where contracts live, and which commands keep quality high as you grow.
Architecture proof
A full product stack, not a stitched-together starter.
The point is not just to help you ship a first screen. It is to give you a foundation that can support a real product, a real team, and real interfaces beyond the browser.
SaaS app included
Start from a real multi-tenant SaaS app with auth, organisations, roles, onboarding, and customer-facing workflows.
API plus MCP server
Pair the product app with a dedicated API app, committed OpenAPI output, typed client generation, and an MCP server surface.
CLI and docs
Keep your product surface broader than the browser with a CLI and a docs app that explain the full stack to customers and agents.
Swappable data layer
Use Supabase by default, but keep providers behind clean contracts so you can swap to Convex or your own backend later.
The repo tells the story clearly
CentraKit stays legible for humans and agents by separating contracts, provider implementations, runtime wiring, and app surfaces.
apps/ saas product app api rest api + mcp server docs product and api docs cli centrakit command surface packages/ data zod contracts + service interfaces core runtime wiring supabase provider implementation ui shared shadcn-style components
Modern developer experience
A stack tuned for how teams ship now.
CentraKit leans hard into the tooling choices that make modern full-stack work faster, cleaner, and easier to sustain with AI assistance.
Next.js 16 with cache components, PPR, auth interrupts, and view transitions already turned on.
A Turbo monorepo that ships the product app, API, docs, CLI, and shared packages together.
TypeScript-first package boundaries with shared Zod contracts and typed clients.
Oxlint, Oxfmt, and Knip for a cleaner default workflow than the usual lint stack.
Centralized tests for unit, integration, and end-to-end coverage.
Rules and agent context shipped with the repo so AI-assisted development scales with the codebase.
A verification path your team will actually use
The template bakes in commands for formatting, linting, typechecking, OpenAPI generation, dead-code detection, and tests so the happy path stays consistent.
pnpm dev pnpm dev:showcase pnpm openapi:generate pnpm lint pnpm typecheck pnpm verify
That same structure also gives coding agents better context: clear boundaries, explicit service layers, and a smaller chance of accidental spaghetti.