About npm

npm is the world’s largest software registry. Open source developers from every continent use npm to share and borrow packages, and many organizations use npm to manage private development as well.

Here is a quick introduction to npm:

npm consists of three distinct components:

Use the website to discover packages, set up profiles, and manage other aspects of your npm experience. For example, you can set up Orgs (organizations) to manage access to public or private packages.

The CLI runs from a terminal, and is how most developers interact with npm.

The registry is a large public database of JavaScript software and the meta-information surrounding it.

Use npm to . . .

Getting started

To get started with npm, you can create an account, which will be available at http://www.npmjs.com/~yourusername.

After you set up an npm account, the next step is to use the command line interface (CLI) to install npm. We look forward to seeing what you create!

Sharing packages and collaborating with others

If you choose to share your packages publicly, there is no cost. To use and share private packages, you need to upgrade your account. To share with others, create organizations, called npm Orgs, and invite others to work with you, privately (for a fee) or publicly (for free). Or you can sign up for a private instance of npm for your company, called npm Enterprise, so you can develop packages internally that are not shared publicly.

Learn more

To learn more about npm as a product, upcoming new features, and interesting uses of npm, sign up for our newsletter at npm-weekly, and be sure to follow @npmjs on Twitter.

For mentoring, tutorials, and learning, visit node school. Consider attending or hosting a nodeschool event (usually free!) at a site near you, or use the self-help tools you can find on the site.

CLI reference documentation

While relevant CLI commands are covered throughout this user documentation, the CLI includes command line help, its own documentation section, and instant help (man pages).