LearnViz CompSci
Home / Learn / DevOps & Tooling / Monorepos

Advanced Topic 42 of 50 DevOps & Tooling

Monorepos

Single repository hosting many projects.

How it works

A monorepo stores many projects, libraries and services in one version-controlled repository, as Google and Meta do at huge scale. Benefits include atomic changes across components, shared tooling and dependency versions, easy code reuse and refactoring and one place to search. Costs include tooling that must scale: build systems such as Bazel, Nx, Turborepo and Pants build only what changed and cache results, and sparse checkout and CODEOWNERS files manage large trees and ownership. This is different from a monolith, which is a single deployed application, and a monorepo can hold many independently deployed services.

Where it is used

Organizations use them to keep a web app, mobile app and shared packages in sync and to roll out an API change together with all its callers.

Common pitfall

Without affected-only builds, CI becomes slow, unclear boundaries let projects entangle and permissions are coarse. Enforce module boundaries, cache aggressively and define clear owners.

Where it fits in the course

Monorepos is topic 42 of 50 in DevOps & Tooling, rated Advanced. It follows Trunk-Based Development. The next topic is Reproducible Builds.

Practice and explore

How to study this topic

  1. Read the explanation above and restate the definition in your own words.
  2. Open the interactive lesson and answer its mini quiz.
  3. Read the common pitfall, then write a short example that avoids it.
  4. Check your understanding in the DevOps & Tooling quiz, and revisit the topic if you miss a question.

Frequently asked questions

What is Monorepos?
Single repository hosting many projects. It belongs to DevOps & Tooling and is an advanced-level topic.
Where do people use Monorepos?
Organizations use them to keep a web app, mobile app and shared packages in sync and to roll out an API change together with all its callers.
What is the most common mistake with Monorepos?
Without affected-only builds, CI becomes slow, unclear boundaries let projects entangle and permissions are coarse.
What should I learn before this topic?
Start with Trunk-Based Development, the topic just before it in DevOps & Tooling.
How can I practice it?
Answer the mini quiz in the interactive lesson, then take the DevOps & Tooling quiz.
Is Monorepos hard to learn?
It is an Advanced topic. Expect to read the explanation more than once and to connect it with earlier topics. Working through a small example by hand helps most.
How long does it take to learn Monorepos?
Most learners can read the explanation and finish the interactive lesson in under an hour. Fluency comes from applying the idea, so plan a few short practice sessions with the quiz.
Which topics are related to Monorepos?
Trunk-Based Development, Reproducible Builds, Feature Flags are closely connected. The full list is in the related topics section of this page.
What should I study after Monorepos?
Continue with Reproducible Builds, the next topic in DevOps & Tooling.

Related topics