Monorepo
DevOps 🟡 MidDéfinition
Stratégie de dépôt unique contenant plusieurs projets/packages. Outils comme Nx, Turborepo ou Lerna gèrent les dépendances et les builds.
Analogie
Un centre commercial : tous les magasins (projets) sous le même toit avec des infrastructures partagées.
Exemple de code
// turbo.json (Turborepo 2 : la clé "pipeline" est devenue "tasks")
{
"$schema": "https://turborepo.dev/schema.json",
"tasks": {
"build": { "dependsOn": ["^build"], "outputs": ["dist/**"] },
"test": { "dependsOn": ["build"] }
}
}
Cas d'usage
Partager du code entre frontend, backend et libs avec des dépendances atomiques.
Anti-pattern
Termes liés
En entretien
Explique-moi ce qu'est un monorepo.
C'est une stratégie de dépôt unique contenant plusieurs projets ou packages, avec des outils comme Nx, Turborepo ou Lerna qui gèrent les dépendances et les builds. Ça permet de partager du code entre frontend, backend et libs avec des dépendances atomiques.
Quel anti-pattern rend un monorepo ingérable ?
Un monorepo sans outil de build incrémental fait que le CI rebuild tout à chaque commit, même les parties non modifiées. Un centre commercial partage les infrastructures, mais chaque magasin doit pouvoir être livré indépendamment.
Fiche mise à jour le 2026-09-27