- CLAUDE.md project-overview lists must-have core packages (shared/cms/api) separately from the four optionals (realtime/events/trpc/ui) with their scaffold command. Read first list adds template-tiers.md and notes that the events + realtime guides require their package to be scaffolded first. - overview.md "Five tags" updated: core-composition is 2 must-have plus trpc (optional); core is 1 must-have plus ui/realtime/events (optional). - dependency-flow.md fix: replaces the stale `// in packages/core-trpc` example with `// in packages/core-shared` (core-trpc is now optional and may not exist in a slim template). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Clean Architecture Monorepo Template
Turborepo + pnpm monorepo organized by vertical features. See CLAUDE.md for the full conventions reference and AGENTS.md for the package map.
Quick Start
pnpm install # Install all dependencies
pnpm dev # Start all dev servers
pnpm build # Build all packages
pnpm test # Run all tests
pnpm turbo boundaries # Validate workspace dependency graph
pnpm turbo gen feature # Scaffold a new feature package
docker compose up -d # Start PostgreSQL
Optional packages
The default template includes the must-have core packages and all 5 feature packages. Four core packages are optional and scaffold on demand:
pnpm turbo gen core-package realtime # Socket.IO realtime layer (ADR-016)
pnpm turbo gen core-package events # Cross-feature events + Payload jobs (ADR-015)
pnpm turbo gen core-package trpc # tRPC server setup
pnpm turbo gen core-package ui # Design system
See docs/architecture/template-tiers.md for the full tier list.
Key ports
| Service | Port |
|---|---|
| Next.js | 3000 |
| Payload CMS | 3001 |
| TanStack Start | 3002 |
| PostgreSQL | 5432 |
| Storybook | 6006 |
Description
Languages
TypeScript
65.6%
JavaScript
21.1%
Handlebars
12.2%
Shell
0.9%
Dockerfile
0.1%