+ 1

What is npm?

npm is the command-line interface to the npm ecosystem. It is battle-tested, surprisingly flexible, and used by hundreds of thousands of JavaScript developers every day.
npm is a tool in the Front End Package Manager category of a tech stack.
npm is an open source tool with 17.3K GitHub stars and 3.2K GitHub forks. Here’s a link to npm's open source repository on GitHub

Who uses npm?

4561 companies reportedly use npm in their tech stacks, including Instacart, reddit, and Stack.

49870 developers on StackShare have stated that they use npm.

npm Integrations

Bitbucket, Yarn, Travis CI, Snyk, and JFrog Artifactory are some of the popular tools that integrate with npm. Here's a list of all 37 tools that integrate with npm.
Pros of npm
Best package management system for javascript
Great community
More packages than rubygems, pypi, or packagist
Nice people matter
Audit feature
Good following
As fast as yarn but really free of facebook
Super fast
Decisions about npm

Here are some stack decisions, common use cases and reviews by companies and developers who chose npm in their tech stack.

Eugene Cheah
Shared insights

Our CLI was originally written Node.js with npm , 2 years ago. We have now migrated to Go !

It was something we quickly hacked together at the early beginnings of Uilicious when our focus was to move fast and iterate the product quickly. We wanted to roll out the CLI ASAP, so that users with a CI/CD can hook up their tests to their front-end deployment pipeline.

However after 2 years, with NPM dependency hell pains - We decided to migrate our CLI toolchain to Go for

  • Zero deployment dependencies
  • Single file distribution (and backwards compatible with NPM)

Happy with how it is : article covers the decision in much deeper details


See more

Vue.js vuex Vue Router Quasar Framework Electron Node.js npm Yarn Git GitHub Netlify My tech stack that helps me develop quickly and efficiently. Wouldn't want it any other way.

See more
Shared insights

From a StackShare Community member: “I’m a freelance web developer (I mostly use Node.js) and for future projects I’m debating between npm or Yarn as my default package manager. I’m a minimalist so I hate installing software if I don’t need to- in this case that would be Yarn. For those who made the switch from npm to Yarn, what benefits have you noticed? For those who stuck with npm, are you happy you with it?"

See more
Ezra Fayet
Shared insights

I released two React hooks on npm:

  • use-wizard, to handle multi-paths, multi-steps wizards

  • use-formidable, to handle big nested forms (cause we all know how painful they are.)

GitHub Link: https://github.com/use-wizard

  • Any advice on what I should do first to improve/bundle the packages? (At the moment, I have no linter, no minifier, no compression, no webpack; I went straight to the features and unit tests)

  • I am bundling it with commonjs, should I also bundle it for ECMA modules?

If anyone wants to join, you're more than welcome; this is beginner-friendly as there are many things to do anyway.

See more
Joshua Dean Küpper
CEO at Scrayos UG (haftungsbeschränkt) · | 6 upvotes · 51K views

For our internal team and collaboration panel we use Nuxt.js (with TypeScript that is transpiled into ES6), Webpack and npm. We enjoy the opinionated nature of Nuxt.js over vanilla Vue.js, as we would end up using all of the components Nuxt.js incorporates anyways and we can adhere to the conventions setup by the Nuxt.js project, which allows us to get better support in case we run into any dead ends. Webpack allows us to create reproducable builds and also debug our application with hot reloads, which greately increased the pace at which we are able to perform and test changes. We also incorporated a lot of testing (ESLint, Chai, Jasmine, Nightwatchjs) into our pipelines and can trigger those jobs through GitLab CI. All packages are fetched through npm, so that we can keep our git repositories slim and are notified of new updates aswell as reported security flaws.

See more
Rick Maltese
founder at Webcompose.ca · | 5 upvotes · 46.5K views
Shared insights

I am a newbie to StackShare and the GitHub community. I want to understand how to use an include statement to get a collection of Markdown files to create a book. I have been told that there are a number of useful tools. My problem is that npm and Node.js are also very new to me. Any suggestions on how to get my md chapters into a printable document would be helpful.

See more

Blog Posts


npm Alternatives & Comparisons

What are some alternatives to npm?
Yarn caches every package it downloads so it never needs to again. It also parallelizes operations to maximize resource utilization so install times are faster than ever.
Build system automating tasks: minification and copying of all JavaScript files, static images. More capable of watching files to automatically rerun the task when a file changes.
Apache Maven
Maven allows a project to build using its project object model (POM) and a set of plugins that are shared by all projects using Maven, providing a uniform build system. Once you familiarize yourself with how one Maven project builds you automatically know how all Maven projects build saving you immense amounts of time when trying to navigate many projects.
Bower is a package manager for the web. It offers a generic, unopinionated solution to the problem of front-end package management, while exposing the package dependency model via an API that can be consumed by a more opinionated build stack. There are no system wide dependencies, no dependencies are shared between different apps, and the dependency tree is flat.
A free and open-source package manager designed for the Microsoft development platform. It is also distributed as a Visual Studio extension.
See all alternatives

npm's Followers
41435 developers follow npm to keep up with related blogs and decisions.