Monorepo Tools
Testing 🔴 SeniorDefinition
Outils pour gerer plusieurs packages/apps dans un seul repo (Turborepo, Nx, Lerna). Offrent caching, parallelisme et graphes de dependances intelligents.
Analogie
Comme un chef de chantier qui coordonne plusieurs equipes sur un meme site : il optimise l'ordre des travaux et evite les doublons.
Exemple de code
// turbo.json (Turborepo)
{
"pipeline": {
"build": {
"dependsOn": ["^build"],
"outputs": ["dist/**"]
},
"test": {
"dependsOn": ["build"]
}
}
}
Cas d'usage
Pour les organisations avec plusieurs packages partageant du code (design system, shared utils, apps).
Anti-pattern
Utiliser un monorepo sans outil de gestion, rebuilder tout le repo a chaque changement.