3 ms·
They have some nice advantages: - Makes it easy to develop applications and libraries together in a single branch - Similarly, makes it easy to make a breakin
by yashap 3y ago
They have some nice advantages:
- Makes it easy to develop applications and libraries together in a single branch
- Similarly, makes it easy to make a breaking change to a library, then change all clients of said library, in a single branch
- And because of the above, makes it easy to keep all dependencies on internal libs at the latest version, which can greatly reduce all sorts of “dependency hell” issues
- Generally makes integration testing a bit easier
The downside is you have to invest a lot more time in tooling, keeping both local and CI builds fast. And even with that tooling, builds won’t be as fast as they trivially are with multi-repo. But if you do invest that time in tooling, you can generally get them fast enough, and then reap the other benefits for a very productive dev experience.
Have done both monorepo and multi-repo at different, decent sized companies. Both have their pros/cons.