Aller au contenu principal
Développement, Méthodologie

Monorepo

Un monorepo est une stratégie de gestion de code source qui consiste à regrouper plusieurs projets, applications ou bibliothèques dans un même dépôt Git, par opposition au polyrepo (un dépôt par projet). Google, Meta et Microsoft utilisent des monorepos massifs pour gérer des milliers de projets interconnectés.

Les avantages principaux sont la cohérence et la simplicité des dépendances internes. Quand deux modules partagent du code, la modification est atomique : un seul commit met à jour le module partagé et tous ses consommateurs. Les refactorings transversaux sont plus simples, le partage de configuration (linting, CI, formatage) est naturel, et il n'y a qu'un seul historique Git à consulter.

En contrepartie, un monorepo exige des outils adaptés : systèmes de build incrémental (Turborepo, Nx, Bazel) pour ne compiler que ce qui a changé, stratégies de CI ciblées pour éviter de tout tester à chaque commit, et conventions strictes pour maintenir la lisibilité. Pour une PME avec 2-3 applications liées (frontend, API, outils internes), le monorepo est souvent le bon choix. Au-delà de 10 équipes, l'investissement en outillage devient significatif.

Même catégorie

Autres termes : Développement

A/B testing L'A/B testing compare deux variantes d'une fonctionnalité pour identifier celle qui performe le mieux. Méthode, outils et limites pour des décisions éclairées.
arrow_forward
API Platform API Platform est le framework de référence pour créer des API REST et GraphQL en PHP/Symfony. Découvrez ses fonctionnalités et son rôle dans les architectures modernes.
arrow_forward
Code legacy Le code legacy désigne du code ancien, difficile à maintenir et à faire évoluer. Comment l'identifier, le gérer et le moderniser progressivement.
arrow_forward
Dette technique La dette technique est le coût caché des compromis techniques accumulés dans un projet. Découvrez comment l'identifier, la mesurer et la maîtriser avant qu'elle ne bloque votre évolution.
arrow_forward
Elasticsearch Elasticsearch est un moteur de recherche et d'analyse distribué. Découvrez ses fonctionnalités, ses cas d'usage et comment il améliore l'expérience de recherche dans vos applications.
arrow_forward
Feature flags Les feature flags permettent d'activer ou désactiver des fonctionnalités en production sans nouveau déploiement. Un levier puissant pour livrer plus vite et réduire les risques.
arrow_forward
OAuth2 / Authentification OAuth2 est le standard d'autorisation qui sécurise l'accès aux API et aux applications web. Découvrez ses mécanismes, ses flux et comment les implémenter correctement.
arrow_forward
Observabilité L'observabilité est la capacité à comprendre l'état d'un système à partir de ses sorties. Logs, métriques et traces : les trois piliers pour piloter vos applications.
arrow_forward
PHP Découvrez PHP, le langage de programmation serveur le plus utilisé au monde. Ses forces, ses évolutions récentes et pourquoi il reste un choix stratégique pour vos projets web.
arrow_forward
PWA Une PWA est une application web qui offre une expérience proche d'une application native. Découvrez ses fonctionnalités, ses avantages et quand la préférer à une app mobile classique.
arrow_forward
PostgreSQL PostgreSQL est le système de gestion de base de données relationnelle open source le plus avancé. Découvrez ses forces, ses fonctionnalités et pourquoi le choisir pour vos projets.
arrow_forward
REST API Une REST API est une interface de programmation qui permet à des applications de communiquer via HTTP. Découvrez ses principes, ses bonnes pratiques et son rôle dans les architectures modernes.
arrow_forward
React React est la bibliothèque JavaScript la plus populaire pour construire des interfaces utilisateur dynamiques. Découvrez ses principes, ses avantages et ses cas d'usage.
arrow_forward
Redis Redis est un système de stockage en mémoire utilisé pour le cache, les files de messages et les sessions. Découvrez comment il accélère vos applications web.
arrow_forward
Refactoring Le refactoring consiste à restructurer du code existant pour le rendre plus lisible, maintenable et évolutif, sans modifier son comportement fonctionnel.
arrow_forward
Refonte d'application La refonte d'application consiste à reconstruire un logiciel existant. Découvrez les signaux qui l'imposent, les stratégies possibles et les pièges à éviter.
arrow_forward
SSR / CSR Le SSR (Server-Side Rendering) et le CSR (Client-Side Rendering) sont deux approches de rendu des pages web. Découvrez leurs différences, avantages et cas d'usage respectifs.
arrow_forward
Stack technique La stack technique est l'ensemble des technologies qui composent votre application. Découvrez comment la choisir pour garantir performance, maintenabilité et pérennité.
arrow_forward
Symfony Symfony est le framework PHP de référence pour les applications web d'entreprise. Découvrez ses avantages, son architecture et pourquoi les équipes techniques le choisissent.
arrow_forward
TailwindCSS TailwindCSS est un framework CSS basé sur des classes utilitaires. Découvrez son approche, ses avantages et pourquoi il accélère le développement d'interfaces web modernes.
arrow_forward
Tests automatisés Les tests automatisés vérifient le bon fonctionnement de votre application à chaque modification de code. Découvrez les différents types de tests et leur rôle dans un projet web.
arrow_forward
Vite Vite est un outil de build et de développement front-end qui révolutionne la vitesse de compilation. Découvrez son fonctionnement, ses avantages et son intégration avec Symfony.
arrow_forward
WebSocket Le protocole WebSocket permet une communication bidirectionnelle en temps réel entre le navigateur et le serveur. Découvrez ses cas d'usage et son fonctionnement.
arrow_forward
Webhook Un webhook est un mécanisme de callback HTTP qui permet à une application de notifier une autre en temps réel lorsqu'un événement se produit. Fonctionnement et cas d'usage.
arrow_forward

Même catégorie

Autres termes : Méthodologie

CI/CD CI/CD (intégration continue / déploiement continu) automatise les tests, la validation et la mise en production du code. Découvrez ses principes et ses bénéfices concrets.
arrow_forward
Cahier des charges Le cahier des charges est le document de référence qui cadre un projet web. Découvrez comment le rédiger pour aligner les attentes et sécuriser le développement.
arrow_forward
DevOps Le DevOps rapproche le développement et les opérations pour des livraisons plus rapides et plus fiables. Découvrez ses pratiques et leur impact sur vos projets.
arrow_forward
Feature flags Les feature flags permettent d'activer ou désactiver des fonctionnalités en production sans nouveau déploiement. Un levier puissant pour livrer plus vite et réduire les risques.
arrow_forward
Infrastructure as Code L'Infrastructure as Code (IaC) consiste à décrire et provisionner l'infrastructure via du code versionné. Principes, outils et bénéfices pour vos projets.
arrow_forward
Intelligence artificielle L'intelligence artificielle transforme les processus de travail des entreprises. Découvrez ses applications concrètes, ses limites et comment l'intégrer de manière pragmatique.
arrow_forward
Maintenance applicative La maintenance applicative couvre les mises à jour, corrections et évolutions d'une application en production. Découvrez ses différentes formes et pourquoi elle est indispensable.
arrow_forward
Migration technique La migration technique consiste à faire évoluer le socle technologique d'une application existante. Objectifs, stratégies et pièges à éviter pour réussir une migration.
arrow_forward
RGPD Le RGPD encadre la collecte et le traitement des données personnelles en Europe. Découvrez ses principes, vos obligations et comment les mettre en œuvre dans vos projets web.
arrow_forward
Refactoring Le refactoring consiste à restructurer du code existant pour le rendre plus lisible, maintenable et évolutif, sans modifier son comportement fonctionnel.
arrow_forward
Roadmap produit La roadmap produit est le plan stratégique qui organise les évolutions d'une application dans le temps. Découvrez comment la construire et l'utiliser pour piloter efficacement votre projet.
arrow_forward
Tests automatisés Les tests automatisés vérifient le bon fonctionnement de votre application à chaque modification de code. Découvrez les différents types de tests et leur rôle dans un projet web.
arrow_forward
Transformation numérique La transformation numérique consiste à intégrer les technologies digitales dans tous les aspects d'une entreprise. Découvrez ses enjeux, ses étapes et comment réussir la vôtre.
arrow_forward
Turn-over Le turn-over technique désigne la rotation des développeurs sur un projet. Son impact sur la qualité, la continuité et le coût des projets web est souvent sous-estimé.
arrow_forward
Voir tout le glossaire arrow_forward

Un projet en lien avec monorepo ?

Échangeons sur vos enjeux techniques. Pas de discours commercial, pas de jargon inutile : un diagnostic clair et des solutions concrètes.