Mikä on Monorepo
Yksi arkisto kaikille projekteille
Monorepo on koodinhallintastrategia, jossa useita projekteja säilytetään yhdessä arkistossa.
Edut
- Yhtenäinen koodipohja
- Atomiset muutokset projektien välillä
- Koodin uudelleenkäyttö
- Yksinkertaistettu riippuvuuksien hallinta
- Yhtenäiset standardit ja linterit
Työkalut
- Nx — Angularille, Reactille, Node.js:lle
- Turborepo — Verceliltä
- Lerna — npm-paketeille
- Bazel — Googlelta
- Rush — Microsoftilta
Esimerkkiyrityksiä
- Google (kaikki koodi yhdessä repossa)
- Meta (Facebook, Instagram)
- Microsoft (Windows)
- Uber
Milloin käyttää
- Yhden tiimin mikropalvelut
- Frontend + backend + jaetut kirjastot
- Useat toisiinsa liittyvät tuotteet