What Is a Monorepo? | Vantage

Monorepo A monorepo (monolithic repository) is a single version-controlled repository that holds the code for multiple distinct projects, services, or packages. All teams commit to the same repository, sharing tooling, build configuration, and dependencies. This contrasts with a polyrepo approach where each service or project lives in its own repository. Companies like Google (Piper), Facebook (Mercurial), and Microsoft (GVFS) have operated at extreme monorepo scale. Tools like Nx, Turborepo, and Bazel manage build performance in large monorepos.

Why monorepo matters

The fundamental trade-off is atomic cross-project changes versus team autonomy. In a monorepo, changing a shared library and all its consumers in a single commit is atomic and safe. In a polyrepo, the same change requires coordinating releases across repositories, creating version incompatibilities and delayed integration. For closely coupled services — a platform with multiple apps sharing a design system and API types — a monorepo is dramatically simpler. For independently deployed services owned by different teams, a polyrepo gives teams the autonomy to own their release cadence.

How it works

All projects live in subdirectories of a single repository. Shared code lives in packages/ or libs/ directories. Build tools understand the dependency graph between packages and only rebuild affected packages when code changes. CI runs targeted tests — only the services that depend on changed code are retested. Versioning strategies differ: some teams version all packages together (lockstep), others version independently (each package has its own version). Access control at the directory level can simulate team ownership within a shared repo.

Common mistakes

  • Mixing tightly and loosely coupled services in the same monorepo — services that deploy independently on different cadences create noise for each other

  • No build caching — a monorepo without caching is a monorepo where every CI run rebuilds everything, which does not scale

  • No clear ownership model — without CODEOWNERS or directory-level policies, everything belongs to everyone and nothing belongs to anyone

  • Treating a monorepo as a single deployable unit — services in a monorepo should still deploy independently

  • Not investing in tooling — a monorepo without proper build orchestration (Nx, Turborepo) becomes slower as it grows

Related terms

How Vantage relates

Vantage supports GitHub integration for monorepos. When engineers query the codebase, Vantage understands the package structure and generates tickets that reference the correct packages. Cross-service dependencies surfaced by the knowledge graph help PMs understand which teams are affected by a given PRD change.

Frequently asked questions

Put product concepts into practice

Vantage connects theory to execution. Generate grounded PRDs, track requirements, and ship with confidence.

Start the PRD

Have a feature in mind? Describe it and Vantage drafts the PRD.

A few sentences is enough: the problem, who has it and what you want to change. Vantage turns it into a structured PRD with requirements you can edit.

0 / 8,000

How this works

  1. We save what you typed. No AI runs on this page.
  2. You create a free account.
  3. Vantage builds a PRD from it inside your own workspace.

Why ask for an account? We’re a small team, and a full generation runs a multi-step AI pipeline that costs us real money. So we tie it to a free account instead of running it anonymously. You also get to keep the result and edit it.

Your text is only used to create your project, and it stays private to your account. If you don’t sign up, we delete it after 7 days. Privacy policy

Free to start. No credit card required.

Related reading