What is npm?

npm opens up an entire world of JavaScript talent to you and to your team. It's the world's largest software registry, with approximately 3 billion downloads per week.The registry contains over 600,000 packages (building blocks of code). Open-source developers from every continent use npm to share and borrow packages. Packages are structured to enable you to keep track of dependencies and versions.

Here is a quick introduction to npm:

npm consists of three distinct components:

The website is the primary way developers discover packages, set up profiles, and manage other aspects of their npm experience.

The registry is a large database of information about packages.

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

Use npm to . . .

These are just a few examples of ways developers use npm. If you'd like to add a bullet point, comment here.

How to Find Packages

To find packages, start with the npm search bar.

While browsing, you'll find:

(To understand the difference between node modules and packages, click here).

Example: Finding a Package

For example, suppose you wanted to use bar codes (QR codes) in your application. Rather than spend weeks figuring out how to do this, why not see if someone has posted a package that creates QR codes? Start by entering a value in the search bar:


Related options will appear:


Or, click, to filter the possibilities even more:


When you choose a package to explore, more information appears. This information is written by the package author(s) so details vary.


Now, you can read the developer's instructions to discover how to use this package.

Next Steps

Now that you know what npm is, and a bit about how to use it, it's time to get started. Install npm. We look forward to seeing what you will create!

Learn More

To learn more about npm as a product, new features on the way, and interesting uses of npm, sign up for our newsletter at npm-weekly.

To explore additional features that you might wish to use as your project evolves, click here.

Last modified January 31, 2018           Found a typo? Send a pull request!

npm Services

Getting started

Private packages


Using npm

CLI commands

Configuring npm

View All On One Page