March 14, 2026
Monorepo Over Microservices
Context
Starting the No Scratch Nav project, I needed to decide how to structure the codebase. With AI as my pair programmer, the choice between monorepo and separate repos had significant implications.
Decision
Used a monorepo with shared types, unified CI/CD, and a single deployment pipeline.
Alternatives Considered
Separate frontend and backend repos
Pros
- Independent deployments
- Isolated codebases
Cons
- More context to manage across AI sessions
- Duplicate CI/CD configuration
- Harder to share types
Microservices architecture
Pros
- Independent scaling
- Team ownership boundaries
Cons
- Massive overhead for a solo developer
- AI loses context across services
- Complex networking for simple features
Reasoning
AI tools work best with a single coherent context. A monorepo means all code, types, and configuration are in one place — AI can understand the full system without switching contexts. Single CI/CD pipeline reduces debugging surface.