123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- .TH "NPM" "1" "August 2021" "" ""
- .SH "NAME"
- \fBnpm\fR \- javascript package manager
- .SS Synopsis
- .P
- .RS 2
- .nf
- npm <command> [args]
- .fi
- .RE
- .SS Version
- .P
- 6\.14\.15
- .SS Description
- .P
- npm is the package manager for the Node JavaScript platform\. It puts
- modules in place so that node can find them, and manages dependency
- conflicts intelligently\.
- .P
- It is extremely configurable to support a wide variety of use cases\.
- Most commonly, it is used to publish, discover, install, and develop node
- programs\.
- .P
- Run \fBnpm help\fP to get a list of available commands\.
- .SS Important
- .P
- npm is configured to use npm, Inc\.'s public registry at
- https://registry\.npmjs\.org by default\. Use of the npm public registry is
- subject to terms of use available at https://www\.npmjs\.com/policies/terms\.
- .P
- You can configure npm to use any compatible registry you like, and even run
- your own registry\. Use of someone else's registry may be governed by their
- terms of use\.
- .SS Introduction
- .P
- You probably got npm because you want to install stuff\.
- .P
- Use \fBnpm install blerg\fP to install the latest version of "blerg"\. Check out
- npm help \fBinstall\fP for more info\. It can do a lot of stuff\.
- .P
- Use the \fBnpm search\fP command to show everything that's available\.
- Use \fBnpm ls\fP to show everything you've installed\.
- .SS Dependencies
- .P
- If a package references to another package with a git URL, npm depends
- on a preinstalled git\.
- .P
- If one of the packages npm tries to install is a native node module and
- requires compiling of C++ Code, npm will use
- node\-gyp \fIhttps://github\.com/nodejs/node\-gyp\fR for that task\.
- For a Unix system, node\-gyp \fIhttps://github\.com/nodejs/node\-gyp\fR
- needs Python, make and a buildchain like GCC\. On Windows,
- Python and Microsoft Visual Studio C++ are needed\.
- For more information visit
- the node\-gyp repository \fIhttps://github\.com/nodejs/node\-gyp\fR and
- the node\-gyp Wiki \fIhttps://github\.com/nodejs/node\-gyp/wiki\fR\|\.
- .SS Directories
- .P
- See npm help \fBfolders\fP to learn about where npm puts stuff\.
- .P
- In particular, npm has two modes of operation:
- .RS 0
- .IP \(bu 2
- global mode:
- npm installs packages into the install prefix at
- \fBprefix/lib/node_modules\fP and bins are installed in \fBprefix/bin\fP\|\.
- .IP \(bu 2
- local mode:
- npm installs packages into the current project directory, which
- defaults to the current working directory\. Packages are installed to
- \fB\|\./node_modules\fP, and bins are installed to \fB\|\./node_modules/\.bin\fP\|\.
- .RE
- .P
- Local mode is the default\. Use \fB\-g\fP or \fB\-\-global\fP on any command to
- operate in global mode instead\.
- .SS Developer Usage
- .P
- If you're using npm to develop and publish your code, check out the
- following help topics:
- .RS 0
- .IP \(bu 2
- json:
- Make a package\.json file\. See npm help \fBpackage\.json\fP\|\.
- .IP \(bu 2
- link:
- For linking your current working code into Node's path, so that you
- don't have to reinstall every time you make a change\. Use
- \fBnpm link\fP to do this\.
- .IP \(bu 2
- install:
- It's a good idea to install things if you don't need the symbolic link\.
- Especially, installing other peoples code from the registry is done via
- \fBnpm install\fP
- .IP \(bu 2
- adduser:
- Create an account or log in\. Credentials are stored in the
- user config file\.
- .IP \(bu 2
- publish:
- Use the \fBnpm publish\fP command to upload your code to the registry\.
- .RE
- .SS Configuration
- .P
- npm is extremely configurable\. It reads its configuration options from
- 5 places\.
- .RS 0
- .IP \(bu 2
- Command line switches:
- Set a config with \fB\-\-key val\fP\|\. All keys take a value, even if they
- are booleans (the config parser doesn't know what the options are at
- the time of parsing)\. If no value is provided, then the option is set
- to boolean \fBtrue\fP\|\.
- .IP \(bu 2
- Environment Variables:
- Set any config by prefixing the name in an environment variable with
- \fBnpm_config_\fP\|\. For example, \fBexport npm_config_key=val\fP\|\.
- .IP \(bu 2
- User Configs:
- The file at $HOME/\.npmrc is an ini\-formatted list of configs\. If
- present, it is parsed\. If the \fBuserconfig\fP option is set in the cli
- or env, then that will be used instead\.
- .IP \(bu 2
- Global Configs:
- The file found at \.\./etc/npmrc (from the node executable, by default
- this resolves to /usr/local/etc/npmrc) will be parsed if it is found\.
- If the \fBglobalconfig\fP option is set in the cli, env, or user config,
- then that file is parsed instead\.
- .IP \(bu 2
- Defaults:
- npm's default configuration options are defined in
- lib/utils/config\-defs\.js\. These must not be changed\.
- .RE
- .P
- See npm help \fBconfig\fP for much much more information\.
- .SS Contributions
- .P
- Patches welcome!
- .P
- If you would like to contribute, but don't know what to work on, read
- the contributing guidelines and check the issues list\.
- .RS 0
- .IP \(bu 2
- CONTRIBUTING\.md \fIhttps://github\.com/npm/cli/blob/latest/CONTRIBUTING\.md\fR
- .IP \(bu 2
- Bug tracker \fIhttps://github\.com/npm/cli/issues\fR
- .RE
- .SS Bugs
- .P
- When you find issues, please report them:
- .RS 0
- .IP \(bu 2
- web:
- https://npm\.community/c/bugs
- .RE
- .P
- Be sure to follow the template and bug reporting guidelines\. You can also ask
- for help in the support forum \fIhttps://npm\.community/c/support\fR if you're
- unsure if it's actually a bug or are having trouble coming up with a detailed
- reproduction to report\.
- .SS Author
- .P
- Isaac Z\. Schlueter \fIhttp://blog\.izs\.me/\fR ::
- isaacs \fIhttps://github\.com/isaacs/\fR ::
- @izs \fIhttps://twitter\.com/izs\fR ::
- i@izs\.me
- .SS See Also
- .RS 0
- .IP \(bu 2
- npm help help
- .IP \(bu 2
- npm help package\.json
- .IP \(bu 2
- npm help install
- .IP \(bu 2
- npm help config
- .IP \(bu 2
- npm help npmrc
- .RE
|