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
Dec 13 Dec 14 Dec 15 Dec 16 Dec 17 Dec 18 Dec 19 Avg Growth
Bower (JS) 23949 23974 24010 24067 24136 24205 24281 56/day
Clojars (Clojure) 11099 11102 11113 11127 11136 11145 11159 10/day
CPAN 30935 30935 30950 30952 30950 30962 30966 6/day
CPAN (search) 30935 30936 30950 30952 30952 30962 30967 6/day
CRAN (R) 6105 6107 6106 6113 6121 6124 6126 3/day
Crates.io (Rust) 520 535 542 549 559 575 581 9/day
GoDoc (Go) 41972 42051 42247 42351 42486 42702 42825 142/day
Hackage (Haskell) 7393 7398 7406 7408 7412 7423 7430 6/day
Hex.pm (Elixir/Erlang) 342 342 344 344 346 346 346 1/day
Maven Central (Java) 93076 93101 93143 93199 93276 93468 93558 78/day
MELPA (Emacs) 2165 2169 2175 2178 2179 2182 2183 3/day
npm (node.js) 0 0 0 0 0 0 0 0/day
nuget (.NET) 30075 30089 30107 30129 30167 30205 30242 28/day
Packagist (PHP) 45152 45210 45276 45383 45485 45599 45697 88/day
Pear (PHP) 599 599 599 599 599 599 599 0/day
PyPI 52757 52787 52834 52911 52947 53004 53055 46/day
Rubygems.org 93193 93233 93270 93332 93388 93449 93491 52/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.