Web Dev Tools

Monorepo Tools

Managing multi-package repos cleanly.

Task runners / build orchestration

  • Turborepo — Vercel's task runner; remote caching, simple config, default for new TS monorepos.
  • Nx — task runner + plugins; more opinionated, deeper plugin ecosystem (especially for Angular and Java mixes).
  • Moon — Rust-based task runner; growing in popularity.
  • Bazel / Pants — when you have polyglot code at scale.

Package managers (workspace support)

  • pnpm — fastest, content-addressed store, strict by default. Default for new monorepos.
  • Bun — fast, includes a workspace-aware runtime + bundler.
  • npm workspaces — works fine for small repos.
  • Yarn — Berry/Modern is fine, but uptake has plateaued.

Versioning / publishing

  • Changesets — manual changesets per PR → consolidated changelog + version bump + publish. Default for OSS TS monorepos.
  • release-please (Google) — automates releases from conventional commits.
  • semantic-release — older but still common.

Pick this if…

  • Default new TS monorepo: pnpm + Turborepo + Changesets.
  • Already on Nx, or polyglot needs: Nx.
  • Bun-first: Bun workspaces + Turborepo (or Moon).
  • Massive polyglot enterprise: Bazel.

On this page