Skip to content

mikeal/githubarchive

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

githubarchive -- Streaming parsers for the github archive.

Install

$ npm install githubarchive

Usage
var archive = require('githubarchive')
archive('http://data.githubarchive.org/2012-04-11-15.json.gz').languages(function (err, langs) {
  if (err) throw err
  console.log(langs) // a hash of the language count in that days activity
})

Or, alternatively from a file already downloaded.

var archive = require('githubarchive')
archive(path.join(__dirname, '2012-04-11-15.json.gz')).languages(function (err, langs) {
  if (err) throw err
  console.log(langs) // a hash of the language count in that days activity
})
More parsing.

I need more parsers! Pull requests welcome for anything even moderately useful, you can look at the code for the languages parser to see how simple it is, the JSON parsing is already taken care of.

In depth usage

All parsers are streams and expect to have a JSONStream piped to them. If you want to handle the acquisition yourself it would look like this.

request(url)
  .pipe(zlib.createGunzip())
  .pipe(jsonstream.parse())
  .pipe(githubarchive.languages(function (e, langs) {
    // do stuff
  }))

Or, alternatively from a file.

fs.createFileStream(path)
  .pipe(zlib.createGunzip())
  .pipe(jsonstream.parse())
  .pipe(githubarchive.languages(function (e, langs) {
    // do stuff
  }))

About

Streaming parsers for the github archive.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published