Module Counts

  • Include
  • Bower (JS)
  • Clojars (Clojure)
  • CPAN
  • CPAN (search)
  • CRAN (R)
  • Crates.io (Rust)
  • GoDoc (Go)
  • Hackage (Haskell)
  • Hex.pm (Elixir/Erlang)
  • Maven Central (Java)
  • MELPA (Emacs)
  • npm (node.js)
  • nuget (.NET)
  • Packagist (PHP)
  • Pear (PHP)
  • PyPI
  • Rubygems.org
  • time period
  • all time
  • last year
  • last 90 days
  • last 30 days
  • last 7 days
Jan 26 Jan 27 Jan 28 Jan 29 Jan 30 Jan 31 Feb 1 Avg Growth
Bower (JS) 26259 26349 26411 26490 26581 26640 26677 69/day
Clojars (Clojure) 11512 11522 11537 11545 11558 11570 11575 10/day
CPAN 31195 31203 31211 31217 31215 31219 31229 5/day
CPAN (search) 31195 31203 31211 31217 31214 31219 31230 5/day
CRAN (R) 6225 6232 6239 6245 6251 6258 6258 5/day
Crates.io (Rust) 864 1280 1284 1288 1291 1293 1305 65/day
GoDoc (Go) 49133 49241 49290 49369 49535 49773 50021 135/day
Hackage (Haskell) 7586 7593 7595 7599 7602 7605 7610 4/day
Hex.pm (Elixir/Erlang) 414 415 417 419 421 421 421 1/day
Maven Central (Java) 96093 96165 96242 96353 96411 96592 96631 84/day
MELPA (Emacs) 2259 2261 2265 2267 2270 2273 2273 2/day
npm (node.js) 120736 121078 121344 121598 121914 122150 122334 264/day
nuget (.NET) 31500 31567 31616 31653 31695 31719 31740 37/day
Packagist (PHP) 48616 48732 48838 48929 49006 49089 49154 91/day
Pear (PHP) 599 600 600 600 600 600 600 0/day
PyPI 54408 54456 54512 54564 54613 54640 54675 42/day
Rubygems.org 95224 95297 95350 95421 95497 95554 95602 61/day

Data is collected by scraping the relevant websites once a day via a cron job and then stored in a Postgresql database for later retrieval. Growth rates are calculated by averaging data over the last week. I'm gathering counts of separate modules, so multiple versions of the same module/package/gem only count once (foo-1.2, foo-1.3 and bar-1.0 would count as 2 total).

(Feb 2, 2014) Upgraded off the free database plan. The database had outgrown Heroku's 100% free tier. It still qualifies for the hobby level, though. Also added the Melpa (Emacs) repository, and update the Hackage (Haskell) repository to use a different and hopefully more reliable data source.

(Mar 30, 2013) Several folks asked me to add Maven Central. It's a really big Java module repository. I look forward to seeing how fast it's growing. For now, this is the first time we've had a change in the top spot since Rubygems.org passed up CPAN in early 2011.

(Feb 28, 2013) Markus Fischer pointed out that there's a much bigger and better PHP package archive called Packagist. It's been added to the list. They have an awesome statistics page.

Several other folks reported issues with IE compatibility, CSV downloads and chart layout. Hopefully those are all fixed now.

I just (Nov 25, 2012) added the Clojars repository. Much thanks to Jonas Clasen for pointing it out to me.

Much thanks to W Watson for pointing out the nuget (.NET) package repository. I'd like to add more repositories. If you have suggestions, please send them to erik@debill.org.

CPAN and CPAN (search) used to be two conflicting sources for data about how many modules are in CPAN. During spring of 2011 CPAN got a site refresh and the numbers came into line with each other. It looks funny on the graph, but it's an interesting bit of history.

If you'd like to check out the data in more detail, you are welcome to download it in a CSV file.