DEV Community

Cover image for Outstanding Monorepo Tools
Hidayt Rahman
Hidayt Rahman

Posted on

Outstanding Monorepo Tools

A monorepo is a code repository with version control that houses several projects. Although they could be connected, these initiatives are frequently conceptually distinct and managed by several teams. Some businesses keep all of their source code in a single, public repository.
https://monorepo.tools/

These are Eight widely used monorepo utilities.

1. Rush

Rush logo

Rush: a scalable monorepo manager for the web

https://rushjs.io/

2. Turborepo

Turborepo

Turbo is an incremental bundler and build system optimized for JavaScript and TypeScript, written in Rust.

https://turbo.build/

3. Yarn Workspaces

Yarn workspaces

Workspaces are a new way to set up your package architecture that's available by default starting from Yarn 1.0. It allows you to setup multiple packages in such a way that you only need to run yarn install once to install all of them in a single pass
Yarn Workspaces

4. Yalc

yalc acts as very simple local repository for your locally developed packages that you want to share across your local environment
Yalc

5. Lerna

Lerna

Lerna is a tool for managing JavaScript projects with multiple packages. Lerna manages monorepos, which can hold projects containing multiple packages within itself. Monorepos can be challenging to manage because sequential builds and publishing individual packages take a long time.

https://lerna.js.org/

6. npm Workspaces

NPM workspace

Workspaces is a generic term that refers to the set of features in the npm cli that provides support to managing multiple packages from your local file system from within a singular top-level, root package.

NPM Workspaces

7. pnpm

pnpm

What is PNPM? PNPM is an alternative package manager for Node. js which stands for “Performant NPM”. The main purpose of PNPM is to hold all the packages at a global (centralized) store and use them if needed by other projects too by creating hard links to it.

https://pnpm.io/

8. Nx

Nx

Nx is a framework that allows you to architect, test, and build your project at any scale with the most popular modern Front-end frameworks like React and Angular, and Back-end ones like NestJs or Express. To make this possible, Nx comes shipped with a large toolset that simplifies your Monorepo management.

https://nx.dev/

Top comments (0)