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.
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.
package.json
dependencies
property.
devDependencies
fall into this category.
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).
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.