NPM-EXPLAIN(1) General Commands Manual NPM-EXPLAIN(1)
NAME
npm-explain
Synopsis
<!-- AUTOGENERATED USAGE DESCRIPTIONS -->
Description
This command will print the chain of dependencies causing a given pack-
age
to be installed in the current project.
If one or more package specs are provided, then only packages matching
one of the specifiers will have their relationships explained.
The package spec can also refer to a folder within ./node_modules
For example, running npm explain glob within npm's source tree will
show:
glob@7.1.6
node_modules/glob
glob@"^7.1.4" from the root project
glob@7.1.1 dev
node_modules/tacks/node_modules/glob
glob@"^7.0.5" from rimraf@2.6.2
node_modules/tacks/node_modules/rimraf
rimraf@"^2.6.2" from tacks@1.3.0
node_modules/tacks
dev tacks@"^1.3.0" from the root project
To explain just the package residing at a specific folder, pass that as
the
argument to the command. This can be useful when trying to figure out
exactly why a given dependency is being duplicated to satisfy conflict-
ing
version requirements within the project.
$ npm explain node_modules/nyc/node_modules/find-up
find-up@3.0.0 dev
node_modules/nyc/node_modules/find-up
find-up@"^3.0.0" from nyc@14.1.1
node_modules/nyc
nyc@"^14.1.1" from tap@14.10.8
node_modules/tap
dev tap@"^14.10.8" from the root project
Configuration
<!-- AUTOGENERATED CONFIG DESCRIPTIONS -->
See Also
• package spec
• npm config
• npmrc
• npm folders
• npm ls
• npm install
• npm link
• npm prune
• npm outdated
• npm update
9.2.0 December 2022 NPM-EXPLAIN(1)
Generated by dwww version 1.15 on Sun Aug 24 06:35:58 CEST 2025.