Lints your NPM dependencies
and devDependencies
reporting which node modules are
- missing and should be added to your
dependencies
ordevDependencies
- unused and should be removed from your
dependencies
ordevDependencies
- mislabeled and should be moved from
dependencies
todevDependencies
or vice versa
Supported on Node.js versions 4, 5, and 6
$ npm install dependency-lint
$ dependency-lint
To automatically remove unused dependencies and move mislabeled dependencies:
$ dependency-lint --auto-correct
dependency-lint
compares the node modules listed in your package.json
and
the node modules it determines are used. A node module is used if:
- it is required in a javascript file (or a file that transpiles to javascript)
- one of its executables is used in a script in your
package.json
or in a shell script
Since this does not cover all the possible ways that a node module can be used,
dependency-lint
can be configured
to ignore specific errors. Please create an
issue
anytime you need to use this, so we can discuss new ways to determine if and
how a node module is used.
Please see here for an explanation of all the options.
Custom configuration should be placed at dependency-lint.yml
in your project directory.
You can create a configuration file by running
dependency-lint --generate-config
Any options not set in your configuration file will be given there default value.