Lints package.json dependencies and devDependencies
npm install dependency-lintLints your NPM dependencies and devDependencies reporting which node modules are
* missing and should be added to your dependencies or devDependencies
* unused and should be removed from your dependencies or devDependencies
* mislabeled and should be moved from dependencies to devDependencies or vice versa
Supported on Node.js versions 12, 14, 16
```
$ npm install dependency-lint
``
$ dependency-lint
To automatically remove unused dependencies and move mislabeled dependencies:
``
$ dependency-lint --auto-correct
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 scriptSince 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.Configuration
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.Formatters
Three formatters are available and can be switched between with the --format option
`
dependency-lint --format
`*
minimal (default) - prints only the modules with errors
* summary - prints all modules
* json - prints JSON of the form {dependencies, devDependencies} where each is array of objects with the keys
* name - name of the module
* files - list of the files that require the module or execute the module
* scripts - list of scripts in your package.json that execute the module
* error - null or one of the following strings: "missing", "should be dependency", "should be dev dependency", "unused"
* errorIgnored` - if dependency lint has been configured to ignore this error.