Module Counts

  • Include
  • Bower (JS)
  • Clojars (Clojure)
  • CPAN
  • CPAN (search)
  • CRAN (R)
  • Crates.io (Rust)
  • Drupal (php)
  • GoDoc (Go)
  • Hackage (Haskell)
  • Hex.pm (Elixir/Erlang)
  • LuaRocks (Lua)
  • Maven Central (Java)
  • MELPA (Emacs)
  • npm (node.js)
  • nuget (.NET)
  • Packagist (PHP)
  • Pear (PHP)
  • Perl 6 Ecosystem (perl 6)
  • PyPI
  • Rubygems.org
  • time period
  • all time
  • last year
  • last 90 days
  • last 30 days
  • last 7 days
Apr 24 Apr 25 Apr 26 Apr 27 Apr 28 Apr 29 Apr 30 Avg Growth
Bower (JS) 52246 52276 52313 52375 52406 52447 52493 41/day
Clojars (Clojure) 15781 15787 15797 15810 15814 15819 15840 10/day
CPAN 33577 33579 33590 33596 33604 33611 33619 7/day
CPAN (search) 33577 33579 33590 33596 33604 33611 33620 7/day
CRAN (R) 8310 8316 8325 8329 8340 8344 8346 6/day
Crates.io (Rust) 4686 4701 4712 4717 4729 4746 4759 12/day
Drupal (php) 33926 33929 33945 33959 33976 33985 33995 11/day
GoDoc (Go) 120637 120325 120243 120279 120359 120466 120489 -25/day
Hackage (Haskell) 9618 9624 9628 9632 9632 9634 9638 3/day
Hex.pm (Elixir/Erlang) 9/day
LuaRocks (Lua) 1044 1044 1045 1051 1052 1053 1054 2/day
Maven Central (Java) 140803 140874 140956 141052 141220 141306 141407 101/day
MELPA (Emacs) 3060 3063 3064 3065 3068 3068 3073 2/day
npm (node.js) 266538 266952 267410 267899 268427 268873 269219 447/day
nuget (.NET) 54069 54114 54143 54192 54235 54281 54339 45/day
Packagist (PHP) 93920 94067 94216 94358 94508 94647 94733 135/day
Pear (PHP) 602 602 602 602 602 602 602 0/day
Perl 6 Ecosystem (perl 6) 619 619 619 620 620 624 626 1/day
PyPI 79251 79329 79395 79457 79522 79614 79669 70/day
Rubygems.org 117484 117514 117563 117610 117661 117699 117739 42/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).

(Apr 8, 2016) Updates to Rubygems.org and Npmjs.org broke both of those samplers.

(Nov 27, 2015) I upgraded to Rails 5 (alpha), and ruby 2.3.0-preview1. I also fixed the nuget repo, which got a site update that broke sampling some time ago. New repositories: Perl 6, and Drupal

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.