Phil's Musings notes from a peripatetic programmer

Introducing octokit.js

octokit.js is a JavaScript client that interacts with GitHub using their API. Try it out with the interactive demo!

Some unique features:

  • works in a browser or in NodeJS
  • uses Promises
  • written in CoffeeScript
  • Mocha unit tests that actually talk to GitHub (and run in the browser or commandline)
  • Code Coverage using BlanketJS (that runs in the browser or commandline)
  • supports Harmony Generators

API Support:

  • all repo operations (including create/remove)
  • Teams, Organizations, and Permissions
  • eTags for caching results
  • Notifications for rate limit changes
  • Committing multiple files at once

Finding a test and coverage framework that works both in a browser and on the commandline was a bit challenging but I’ll return to that in another post.

This library also uses jQuery.ajax and jQuery.Deferred.