Why not Simple folders?
Why cant I just store services (backend, frontend etc) in various top level folders?
You can, and you should if your
- Services are highly decoupled (dont share any code)
- Services don’t depend on each other.
For eg - A codebase which has a Golang service and a JS service

Why monorepos?
- Shared Code Reuse
- Enhanced Collaboration
- Optimized Builds and CI/CD: Tools like TurboRepo offer smart caching and task execution strategies that can significantly reduce build and testing times.
- Centralized Tooling and Configuration: Managing build tools, linters, formatters, and other configurations is simpler in a monorepo because you can have a single set of tools for the entire project.
