Splitting up large codebases into separate independently versioned
packages is extremely useful for code sharing. However, making changes
across many repositories is messy and difficult to track, and
testing across repositories gets complicated really fast.

To solve these (and many other) problems, some projects will organize
their codebases into multi-package repositories. Projects like Babel,
React, Angular, Ember, Meteor, Jest, and many others develop all of
their packages within a single repository.

Lerna is a tool that optimizes the workflow around managing
multi-package repositories with git and npm.