Переваги
- Єдині зміни в shared-коді одразу видно в усіх проєктах — немає проблеми «якої версії бібліотеки»
- Атомарні коміти: одна зміна API і відповідний рефакторинг усіх споживачів — в одному PR
- Єдині CI/CD, linting, тести — менше конфігурації
Недоліки
- Повільніший CI без інструментів кешування (потрібно запускати тільки змінені частини)
- Складніше управління доступом до різних проєктів
Інструменти
Nx (JavaScript/TypeScript), Turborepo (JS), Bazel (Google, multi-language). Великі монорепо: Google, Meta, Microsoft тримають весь код в одному репозиторії.