Before continuing, make sure you've read the Rush Getting Started as a Developer guide.
This repo is maintained using rushjs. This doc will detail the commands needed to perform various tasks, but it's also helpful to read through the Rush command docs as well.
NOTE: Rush uses its own binary for yarn (version specified in rush.json
> yarnVersion
), so the only version you should need to worry about is node (configured in rush.json
> nodeSupportedVersionRange
)
Equivalent: yarn install
See: rush install, rush build
rush install && rush build
Equivalent: yarn add lodash
See: rush add
# --caret: prepend with ^
# -m: update other packages with this dep
rush add --caret -m -p lodash
Equivalent: yarn upgrade
See: rush update
rush update
Instead of yarn.lock
being in the repository root or in individual packages, there now is a single, Rush-managed lockfile at common/config/rush/yarn.lock
; and similarly, common/temp/node_modules
is where all dependencies are installed and symlinked from in each package.
For linting, testing, and type checking individual packages, there isn't much of a difference. Each package still has its own flow
, lint
and test
scripts, so running yarn test
, for example, still works as expected.