The difference between npm and npx

If you’re a typical front-end developer, you’ll work with npm a lot. But I’m not a typical front-end developer. I avoid npm as much as I possibly can because I hate how fragile it is. As such, I never found out what npx is.

While npm doesn’t actually stand for anything, it’s commonly accepted to mean “node package manager”.

It turns out that npx is the “node package runner”. I guess the “x” comes from “(e)xecutor” or something?

The official blog explains:

npx is a tool intended to help round out the experience of using packages from the npm registry — the same way npm makes it super easy to install and manage dependencies hosted on the registry, npx makes it easy to use CLI tools and other executables hosted on the registry. It greatly simplifies a number of things that, until now, required a bit of ceremony to do with plain npm.

For more information, check out the post on the npm blog:

Introducing npx: an npm package runner


If you have questions, feedback, or any other suggestions, please do email me. I'd love to hear from you!