/snap/node/11782/lib/node_modules/npm/docs/output/commands
NameSizeModeActions
npm-access.html86050644editdlrm
npm-adduser.html65540644editdlrm
npm-audit.html246980644editdlrm
npm-bugs.html81210644editdlrm
npm-cache.html78220644editdlrm
npm-ci.html164010644editdlrm
npm-completion.html50060644editdlrm
npm-config.html99030644editdlrm
npm-dedupe.html160130644editdlrm
npm-deprecate.html63040644editdlrm
npm-diff.html148910644editdlrm
npm-dist-tag.html107800644editdlrm
npm-docs.html80630644editdlrm
npm-doctor.html105600644editdlrm
npm-edit.html53920644editdlrm
npm-exec.html189590644editdlrm
npm-explain.html74670644editdlrm
npm-explore.html52970644editdlrm
npm-find-dupes.html134160644editdlrm
npm-fund.html83990644editdlrm
npm-help-search.html49710644editdlrm
npm-help.html52990644editdlrm
npm-hook.html72010644editdlrm
npm-init.html174220644editdlrm
npm-install-ci-test.html143040644editdlrm
npm-install-test.html180650644editdlrm
npm-install.html367130644editdlrm
npm-link.html199530644editdlrm
npm-login.html69760644editdlrm
npm-logout.html61940644editdlrm
npm-ls.html156900644editdlrm
npm-org.html68300644editdlrm
npm-outdated.html114750644editdlrm
npm-owner.html79650644editdlrm
npm-pack.html86690644editdlrm
npm-ping.html50450644editdlrm
npm-pkg.html136210644editdlrm
npm-prefix.html56880644editdlrm
npm-profile.html81130644editdlrm
npm-prune.html117760644editdlrm
npm-publish.html141910644editdlrm
npm-query.html121660644editdlrm
npm-rebuild.html107510644editdlrm
npm-repo.html77430644editdlrm
npm-restart.html61440644editdlrm
npm-root.html54270644editdlrm
npm-run-script.html140890644editdlrm
npm-sbom.html132030644editdlrm
npm-search.html91440644editdlrm
npm-shrinkwrap.html50570644editdlrm
npm-star.html65130644editdlrm
npm-stars.html50080644editdlrm
npm-start.html64120644editdlrm
npm-stop.html59720644editdlrm
npm-team.html93660644editdlrm
npm-test.html58520644editdlrm
npm-token.html77530644editdlrm
npm-uninstall.html101900644editdlrm
npm-unpublish.html96980644editdlrm
npm-unstar.html63650644editdlrm
npm-update.html209040644editdlrm
npm-version.html133070644editdlrm
npm-view.html112360644editdlrm
npm-whoami.html50400644editdlrm
npm.html114260644editdlrm
npx.html113040644editdlrm
Edit: /snap/node/11782/lib/node_modules/npm/docs/output/commands/npm-explain.html (7467B)
npm-explain

npm-explain @10.9.8

Explain installed packages

Table of contents

Synopsis

npm explain <package-spec>

alias: why

Description

This command will print the chain of dependencies causing a given package 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 conflicting 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

json

  • Default: false
  • Type: Boolean

Whether or not to output JSON data, rather than the normal output.

  • In npm pkg set it enables parsing set values with JSON.parse() before saving them to your package.json.

Not supported by all npm commands.

workspace

  • Default:
  • Type: String (can be set multiple times)

Enable running a command in the context of the configured workspaces of the current project while filtering by running only the workspaces defined by this configuration option.

Valid values for the workspace config are either:

  • Workspace names
  • Path to a workspace directory
  • Path to a parent workspace directory (will result in selecting all workspaces within that folder)

When set for the npm init command, this may be set to the folder of a workspace which does not yet exist, to create the folder and set it up as a brand new workspace within the project.

This value is not exported to the environment for child processes.

See Also