October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run ScanOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk4 min

What Is a Monorepo? One Repository, Many Projects

A monorepo holds multiple projects in one source-code repository. Here’s what that enables, what it costs, and how to decide whether it fits a team.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A monorepo is a single source-code repository that contains multiple projects. Those projects may share code and tooling, but they do not have to form one application or ship in one release. It is an organizational choice: keep multiple projects together, rather than give each project its own repository.

What does a monorepo contain?

The word combines “monolithic” and “repository,” though a monorepo does not necessarily contain one monolithic application. It can hold related or unrelated projects, such as libraries, services, and applications. Teams may manage dependencies and developer tools in common, while maintaining separate project boundaries inside the repository.

As an Amazon Associate I earn from qualifying purchases.

The defining feature is the repository boundary: multiple projects live in one source-control repository. It does not determine whether projects are deployed together, released together, or owned by the same team.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why put multiple projects in one repository?

Coordinate changes across projects

When a change affects several projects, contributors can update them in one place and at one repository revision. That can avoid the coordination overhead of making and tracking corresponding changes across several repositories. Babel, for example, describes easier coordination across its modules and cross-module testing as benefits of its monorepo approach. These are observations about Babel’s project, not the result of a controlled comparison. Babel’s monorepo documentation

Reuse code and manage dependencies

Shared source code can be easier to discover and reuse when it sits alongside its consumers. A shared repository can also make it simpler to align dependency versions or change a library and its users together. The 2018 literature review identifies simplified dependencies, code reuse, and coordinated refactoring among benefits reported in the literature. The review of monorepo literature

Keep workflows consistent

A common repository can support shared conventions for building, testing, linting, and releasing projects. Google Cloud cites code reuse, dependency management, and consistent developer workflows among the benefits of its monorepo. Its documentation also notes that some Google Cloud services use another Git repository for open-source software, illustrating that a monorepo can coexist with separate repositories. Google Cloud’s account of its monorepo

What are the trade-offs?

  • Navigation and code health: A repository with many projects can feel large or intimidating, and keeping its code healthy takes active maintenance. Babel lists a larger, more intimidating codebase among its project-specific costs. Babel’s monorepo documentation
  • Build and test workload: A shared repository does not automatically make builds faster or tests more selective. Without tooling that understands project dependencies, a change may trigger more work than necessary.
  • Tooling investment: Large repositories can require substantial effort to establish ownership, dependency boundaries, build and test automation, and repository workflows. The literature review also identifies complexity, migration, and build, deployment, and testing concerns among reported challenges. The 2018 literature review
  • Versioning boundaries: Keeping code together can make coordinated changes easier, but teams may value the version information and independent dependency and release boundaries that separate repositories provide. The literature review reports loss of version information as a challenge.

How do large monorepos avoid building everything?

They rely on explicit project boundaries and tooling that can determine which targets depend on a change. In the workflow described by Bazel’s FAQ, teams own parts of a large source tree, publish components as build targets, and specify dependencies so Bazel can predict which programs and tests a change affects. The repository itself does not provide that prediction; the build system uses the dependency information. Bazel’s FAQ

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Target size involves a trade-off. A single broad target is simpler to describe but may require rebuilding a whole project after a change. Fine-grained targets can help caching and scheduling, but their dependency declarations take more work to create and maintain. Bazel’s dependency guidance

Bazel is one possible tool, not a requirement for a monorepo. Its FAQ says it is aimed especially at large codebases, mixed compiled languages, multiple deployment platforms, and extensive tests; it may offer little benefit when a workflow consists of a few long, sequential steps. Bazel’s FAQ

How does a monorepo compare with separate repositories?

Neither arrangement is universally better. A monorepo tends to suit teams that frequently coordinate changes across projects and can support shared tooling. Separate repositories can suit projects with strong independent versioning, release, or ownership boundaries. The practical choice depends on how the team works, not on repository size alone.

  • Cross-project changes: How often do changes span projects, and how costly is it to coordinate them across repositories?
  • Dependencies and releases: Do projects benefit from consuming internal code at a shared revision, or do they need independently versioned dependencies and release schedules?
  • Build and test performance: Can the tooling identify affected projects, or would a shared repository mean running too much work for each change?
  • Ownership and navigation: Can the team keep responsibilities clear and the codebase understandable as it grows?
  • Migration and maintenance: Is the current coordination pain significant enough to justify moving repositories and maintaining the supporting tools?

The 2018 review by Gleison Brito, Ricardo Terra, and Marco Tulio Valente synthesized 21 grey-literature sources and two academic papers. It found no consensus that one repository strategy works best for every team; its findings describe that literature, not a current controlled comparison. Read the review

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Is Google’s monorepo a model to copy?

Google Cloud describes a repository containing millions of source files and billions of lines of code, with a history of hundreds of millions of changelists and tens of thousands of new changelists on each workday. Those figures are reported by Google Cloud, and the cited page does not state when they were published. They illustrate the scale of one organization’s approach, not a target or a prescription for other teams. Google Cloud’s monorepo account

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.