Skip to content
/ github Public
forked from github-tools/github

A higher-level wrapper around the Github API. Intended for the browser.

License

Notifications You must be signed in to change notification settings

mrchief/github

 
 

Repository files navigation

Github.js

Downloads per month Latest version Gitter Travis

Github.js provides a minimal higher-level wrapper around Github's API. It was concieved in the context of Prose, a content editor for GitHub.

Docs

Read the docs

Installation

Github.js is available from npm or (soon) cdnjs.

npm install github-api

## Compatibility Github.js is tested on Node:

  • 0.10
  • 0.12
  • 4.x
  • 5.x

GitHub Tools

The team behind Github.js has created a whole organization, called GitHub Tools, dedicated to GitHub and its API. In the near future this repository could be moved under the GitHub Tools organization as well. In the meantime, we recommend you to take a look at other projects of the organization.

Samples

/*
   Data can be retrieved from the API either using callbacks (as in versions < 1.0)
   or using a new promise-based API. For now the promise-based API just returns the
   raw HTTP request promise; this might change in the next version.
 */
var GitHub = require('github-api');

// unauthenticated client
var gh = new GitHub();
var gist = gh.getGist(); // not a gist yet
gist.create({
   public: true,
   description: 'My first gist',
   files: {
      "file1.txt": {
         contents: "Aren't gists great!"
      }
   }
}).then(function(httpResponse) {
   // Promises!
   var gist = httpResponse.data;
   gist.read(function(err, gist, xhr) {
      // if no error occurred then err == null

      // gist == httpResponse.data

      // xhr == httpResponse
   });
});
var GitHub = require('github-api');

// basic auth
var gh = new GitHub({
   username: 'FOO',
   password: 'NotFoo'
});

var me = gh.getUser();
me.getNotification(function(err, notifcations) {
   // do some stuff
});

var clayreimann = gh.getUser('clayreimann');
clayreimann.getStarredRepos()
   .then(function(httpPromise) {
      var repos = httpPromise.data;
   });
var GitHub = require('github-api');

// token auth
var gh = new GitHub({
   token: 'MY_OAUTH_TOKEN'
});

var yahoo = gh.getOrganization('yahoo');
yahoo.getRepos(function(err, repos) {
   // look at all the repos!
})

About

A higher-level wrapper around the Github API. Intended for the browser.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 99.2%
  • HTML 0.8%