🌍 Normalized repository URLs for every package in the npm registry.
JavaScript Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
scripts
.travis.yml
example.js
hostnames.js
index.json
package-lock.json
package.json
readme.md
test.js

readme.md

all-the-package-repos

All the repository URLs in the npm registry as an object whose keys are package names and values are URLs.

This package weighs in at about 30MB.

Stats

Packages Count Percentage of Total Packages
Total in npm registry 696409 100%
With repository in package.json 544216 78.15%
On GitHub 534093 76.69%
On BitBucket 450 0.06%
On GitLab 325 0.05%

Installation

npm install all-the-package-repos --save

Usage

repos = require('all-the-package-repos')

repos.express
// https://github.com/expressjs/express

See example.js for more usage details.

GitHub URLs are normalized to their https form using github-url-to-object:

  • git@github.com:foo/bar.git becomes https://github.com/foo/bar
  • foo/bar becomes https://github.com/foo/bar
  • etc...

Repository Hostnames

For the curious, there's a submodule that collects all the hostnames of all the repository URLS:

require('./hostnames').slice(0,10)

[ 
  { value: 'github.com', count: 452768 },
  { value: 'bitbucket.org', count: 553 },
  { value: 'git.oschina.net', count: 219 },
  { value: 'gitlab.com', count: 116 },
  { value: 'git.coding.net', count: 114 },
  { value: 'archive.voodoowarez.com', count: 81 },
  { value: 'gitee.com', count: 60 },
  { value: 'gitlab.baidu.com', count: 49 },
  { value: 'git-wip-us.apache.org', count: 38 },
  { value: 'gitlab.alibaba-inc.com', count: 36 }
]

It also has a CLI:

all-the-package-repo-hostnames | head -n 10

github.com                                        452768
bitbucket.org                                     553
git.oschina.net                                   219
gitlab.com                                        116
git.coding.net                                    114
archive.voodoowarez.com                           81
gitee.com                                         60
gitlab.baidu.com                                  49
git-wip-us.apache.org                             38
gitlab.alibaba-inc.com                            36

Tests

npm install
npm test

Dependencies

None

Dev Dependencies

  • all-the-packages: All the npm registry metadata as an offline event stream.
  • github-url-to-object: Extract user, repo, and other interesting properties from GitHub URLs
  • object-values: Get the values of an object
  • standard: JavaScript Standard Style
  • tap-spec: Formatted TAP output like Mocha's spec reporter
  • tape: tap-producing test harness for node and browsers

License

MIT

Generated by package-json-to-readme