Relato Open Source Statistics

This is a very early version of an attempt to analyze open source projects' relationships, their relative importance and impact on each other. Right now only NPM is supported with four basic statistics, but we are planning to extend this to more interesting stats and different dependency management systems like Maven Central and PyPI.

NPM Project Statistics

The following data is based on NPM, the Node Package Manager. Node packages have a package.json file in which runtime and development dependencies can be defined. For every registered project on npmjs.org, the package.json file was downloaded and thereafter analyzed. Refer to the Disclaimer for some limitations of this approach.

At the moment we are only providing four statistics.

Users
The total number of projects that depend on this package.
Runtime Users
The number of those projects who require this package in order to run. This number is based on the package.json dependencies property.
Development Users
All those projects that are listed under devDependencies fall into this category.
Page Rank
A value between 0 and 10 that represents the relative importance of NPM packages. A higher value means that a project is more important. The Page Rank is based on the total number of users, i.e. it does not differentiate between runtime and development dependencies.

Disclaimer

The presented data only captures dependencies and statistics of published NPM projects, i.e. frameworks and libraries. This means that you will not find any information about "normal projects", i.e. private or at least not published Node projects, e.g. web applications, which are only using open source projects, but that are never appearing as dependencies of other projects.

A result of this limitation is that libraries and test frameworks have a high number of users and therefore high Page Rank, whereas other frameworks such as Express, that are mostly being used by for "normal projects", have a relatively low Page Rank. This becomes even more evident by the number of GitHub stars for Mocha (a test framework) and Express (web framework). Express has a vastly lower Page Rank, but has three times the amount of stars (~12k vs. 4k at the time of writing).

Future Work

While one can never take into account every NPM using project (which would need to include closed source software), it would be nice if the analysis included non published, but open source projects. Such data could be collected by crawling GitHub, BitBucket and other source code hosting sites. By doing so we could cope with the limitations mentioned in the disclaimer (to some degree).

In addition to this, the following topics are interesting.

Fork me on GitHub