/syncpack

Consistent dependency versions in large JavaScript Monorepos.

Primary LanguageTypeScriptMIT LicenseMIT

syncpack

Consistent dependency versions in large JavaScript Monorepos.

Installation

npm install --save-dev syncpack

Documentation

Full information can be found in the documentation at https://jamiemason.github.io/syncpack/.

Commands

Ensure that multiple packages requiring the same dependency define the same version, so that every package requires eg. react@16.4.2, instead of a combination of react@16.4.2, react@0.15.9, and react@16.0.0.

Organise package.json files according to a conventional format, where fields appear in a predictable order and nested fields are ordered alphabetically. Shorthand properties are used where available, such as the "repository" and "bugs" fields.

Check whether dependency versions used within "dependencies", "devDependencies", etc follow a consistent format.

List all dependencies required by your packages.

List dependencies which are required by multiple packages, where the version is not the same across every package.

Ensure dependency versions used within "dependencies", "devDependencies" etc follow a consistent format.

Breaking Changes

Version 9.0.0 required some breaking API changes to add support for a new customTypes feature, but they are very simple to make.

Badges

  • NPM version
  • NPM downloads
  • Build Status
  • Maintainability