At Microsoft, we build monorepos with hundreds of projects and developers. Rush's unique installation strategy produces a single shrinkwrap/lock file for all your projects that installs extremely fast. Rush supports parallel builds, subset builds, and incremental builds. Distributed multi-machine builds are coming soon!
Rush provides many mechanisms for onboarding newcomers and coordinating collaboration between teams. Repo policies allow new package dependencies to be reviewed before they are accepted. Rush can enforce consistent dependency versions across your repo. Different subsets of projects can publish separately with lockstep or independent versioning strategies, private releases, and so forth.
Tired of broken imports or mismatched versions when someone else installs your package? Rush's isolated symlinking model eliminates these NPM phantom dependencies, ensuring you'll never again accidentally import a library that was missing from package.json.
Rush's installation model now supports the PNPM package manager, which eliminates NPM doppelgangers. You'll never again find 5 copies of the same version of the same library in your node_modules folder!
Too many broken builds that "worked fine on my machine!" or support tickets that turned out to be a developer laptop with an odd configuration? For repository maintainers, Rush helps to ensure that installs and builds are completely deterministic. Even the Rush engine version is automatically installed according to your Git branch. If you define custom commands or options, they are strictly validated and displayed as part of Rush's command-line help.
Tired of cobbling together your developer experience from partial solutions that never seem to integrate properly? Rush is a unified orchestrator that can install, link, build, generate change logs, publish, and bump versions.
In a Rush repo, each project folder remains fully self-contained, individually installable, and easy to relocate if needed. Have a special feature you'd like to see? The Rush software is distributed under an MIT license. Community contributions are welcome!