This excercise computes PageRank of npm dependencies graph.
- Download all npm modules:
wget https://skimdb.npmjs.com/registry/_design/scratch/_view/byField
- Convert them into ngraph.graph using convertToGraph.js script.
- Run
rank.js
(see below):
Number of nodes: 123,969; Number of edges: 281,471; PageRank computed in 1,187 ms;
- underscore - 0.0132458168541106
- lodash - 0.012808245947189859
- request - 0.01124548887292648
- async - 0.01021872541704812
- minimist - 0.007416850477780134
- debug - 0.0063426388460246
- ms - 0.005713853566335207
- commander - 0.005602967220606088
- readable-stream - 0.005279385043316346
- coffee-script - 0.004722570622623644
- optimist - 0.004666371354769678
- chalk - 0.004148714607703072
- colors - 0.004126358737569487
- nan - 0.004006493881364531
- express - 0.003940025721262941
- q - 0.003850786943940958
- yeoman-generator - 0.00379555140778547
- inherits - 0.003748721827295395
- mkdirp - 0.003691480063872078
- through - 0.0036221839261054304
- through2 - 0.0034514656168033947
- glob - 0.002979874394020952
- xtend - 0.0027326243900742237
- uglify-js - 0.0023098313251757674
- moment - 0.002249874112136482
- bluebird - 0.0022252922069381084
- wordwrap - 0.0020718821613235163
- node-uuid - 0.0020627160971188074
- bindings - 0.0019857793086189546
- amdefine - 0.001959479557513207
- rimraf - 0.001918687193488459
- cheerio - 0.0019043660485402569
- gulp-util - 0.0018981460908246285
- source-map - 0.0018852809976354834
- redis - 0.0018594637139311351
- isarray - 0.0018220440432625256
- es5-ext - 0.0017027234351276802
- minimatch - 0.0016839206057532087
- jquery - 0.0016550758180527772
- xml2js - 0.0016506472503138743
- mime - 0.001621778661522743
- wrappy - 0.0015909624429127976
- windows.foundation - 0.00157602399018788
- qs - 0.001501985861094205
- mongodb - 0.0014977834307627752
- once - 0.0014956419730362738
- brace-expansion - 0.001438595161357216
- semver - 0.0014309608124292556
- sax - 0.0013807343648451979
- socket.io - 0.0013674165209619459
- esprima - 0.0013416406420303142
- jade - 0.0013032043926214701
- xmlbuilder - 0.001239612050770304
- underscore.string - 0.0012316579970975483
- ansi-regex - 0.0012191293061688908
- handlebars - 0.0012107063185569928
- core-util-is - 0.0012015448533117606
- winston - 0.0011757859673551018
- hoek - 0.0011748035129163078
- grunt - 0.0011661316363914904
- nopt - 0.0011654698324087072
- string_decoder - 0.0011423305235877623
- mongoose - 0.0011058402247590357
- jsdom - 0.0010977644107550975
- extend - 0.0010807732145026085
- superagent - 0.0010761510925892386
- mime-types - 0.001051777017875102
- connect - 0.0010387743685316797
- abbrev - 0.0010300368512824332
- iconv-lite - 0.0010068448117545388
- es6-symbol - 0.0009700304296423444
- pkginfo - 0.0009554849042053358
- shelljs - 0.0009494098537727799
- mime-db - 0.0009344205293040478
- strip-ansi - 0.0009332974405163956
- js-yaml - 0.0009211293516341474
- ejs - 0.0009101503704715386
- graceful-fs - 0.0009100154816892158
- promise - 0.000905122298188923
- ws - 0.0008965944442138012
- mocha - 0.0008850342003560252
- fs-extra - 0.0008831021953667824
- marked - 0.0008804861013534269
- asap - 0.0008637007702030617
- escape-string-regexp - 0.0008454335799155875
- d - 0.0008450133108992707
- form-data - 0.0008300510351767073
- get-stdin - 0.0008274849067018161
- oauth - 0.0008274380256108579
- combined-stream - 0.0008239251856871775
- ansi-styles - 0.0008186687052269188
- when - 0.0007919792243572224
- yosay - 0.0007779586957863931
- bl - 0.0007569674379639022
- punycode - 0.0007544014325444696
- es6-iterator - 0.0007472596867243485
- clone - 0.0007348787616316237
- htmlparser2 - 0.0007326573048439669
- event-stream - 0.0007325110849134281
- isstream - 0.0007296274011156147