Two-Millionth Version

by Wolf Rentzsch
Share on facebook or twitter

While querying our database to get exact numbers for RunKit's announcement of scoped package support, we realized npm recently passed an important milestone. So here's our belated card to celebrate the occasion.

Packages have multiple versions. npm currently has ~330,000 packages. Packages have, on average, 6.74 versions. Do the math, and that's over two million versions of packages.

Yes, npm recently passed two million versions. Congratulations to the Node.js community, npm Inc, and everyone who's contributed to the most massive code library in human history. Together we're building something amazing.

We thought it would be fun to go back and figure out which specific packages and versions won the round-number lottery. So we listed every package and version in chronological order and picked out a few winners:

Milestone | Package | Date --- | --- | --- 1st package | sprintf | Nov 11 2010 10th package | uuid-pure | Dec 19 2010 100th package | useragent | Dec 29 2010 1,000th package | worker-pool | Mar 30 2011 10,000th package | PSNjs | Jun 13 2012 100,000th package | js-atom | Oct 20 2014 200,000th package | dodo-core-features | Nov 3 2015 300,000th package | servercreation | Jun 21 2016 10th version | recon@0.0.1 | Dec 18 2010 100th version | jade@0.2.3 | Dec 19 2010 1,000th version | searchparser@0.1.0 | Jan 10 2011 10,000th version | restify@0.3.12 | Jul 7 2011 100,000th version | ep_post_message@0.0.1 | Jan 22 2013 1,000,000th version | ngtestharness@1.0.2 | Jul 27 2015 2,000,000th version | ddv@1.0.16 | Jul 19 2016



We loaded up versions-published-per-day since npm beginning, and it's a fun chart to explore:

Of course the growth is amazing. It's also fun and interesting how you can pick out lulls in new versions on the weekends, especially in the 2016 era (hint: switch to the 1 month ("1m") zoom level and scroll around). You can also make out end-of-the-year Holidaze lull.

Node is definitely people's Day Job nowadays.


So, where is npm heading? We analyzed npm's growth rate, tried to smooth it out and extrapolate when the next big milestones will be hit.

Here's what we came up with:

Milestone | Extrapolated Date --- | --- 3,000,000 Versions | Feb 2017 500,000 Packages | Jun 2017 1,000,000 Packages | Jul 2018


With these dates in mind, hopefully we won't be caught surprised coming upon the upcoming npm milestones. No more belated cards, instead we can start planning 2018's epic 1 Million npm Packages Gala.

Be there.

What is RunKit?

  • RunKit is an interactive playground for running Node.js in the cloud.
  • RunKit offers serverless functions with zero deploy time — prototype code changes in real time!
  • RunKit can be embedded in your tutorials and docs to make them interactive as seen on,, and
Follow RunKit Blog updates with the RSS Feed
Follow @runkitdev on Twitter for the latest updates from RunKit
© 2015–2018 Playground Theory, Inc.