10-task plan for standing up the conformance ESLint plugin in @repo/core-eslint and shipping three structural rules: - feature-must-have-manifest (warn): use-case files require a manifest - usecase-must-have-test-file (error): TDD sibling test enforcement - required-cores-installed (error): manifest cores ↔ workspace.yaml Scope deliberately excludes manifest-AST analysis (no-undeclared-event- publish, no-undeclared-audit) — those require parsing the manifest's TS source as JS and walking the use-case AST, deferred to plan iii.b. Uses regex-based manifest source extraction to avoid pulling in the TypeScript compiler API at lint time. Manifest shape is constrained by the literal `as const` form that defineFeature enforces, so the regex path is sufficient. 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. Five 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
pnpm turbo gen core-package audit # DPA-compliant audit logging (ADR-018)
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%