Skip to main content

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
Platform overview placeholder
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.
Developer workflow placeholder