Github.js provides a minimal higher-level wrapper around Github's API.

Words
42
Reading
1 min
Listen
Play
9y

Usage

/*

Data can be retrieved from the API either using callbacks (as in versions < 1.0)
or using a new promise-based API. The promise-based API returns the raw Axios
request promise.
*/
import GitHub from 'github-api';

// unauthenticated client
const gh = new GitHub();
let gist = gh.getGist(); // not a gist yet
gist.create({
public: true,
description: 'My first gist',
files: {
"file1.txt": {
content: "Aren't gists great!"
}
}
}).then(function({data}) {
// Promises!
let createdGist = data;
return gist.read();
}).then(function({data}) {
let retrievedGist = data;
// do interesting things
});
var GitHub = require('github-api');

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

var me = gh.getUser(); // no user specified defaults to the user for whom credentials were provided
me.listNotifications(function(err, notifications) {
// do some stuff
});

var clayreimann = gh.getUser('clayreimann');
clayreimann.listStarredRepos(function(err, repos) {
// look at all the starred repos!
});
API Documentation

API documentation is hosted on github pages, and is generated from JSDoc; any contributions should include updated JSDoc.

Installation

Github.js is available from npm or unpkg.

npm install github-api

Compatibility

Github.js is tested on Node.js:

6.x
Note: Github.js uses Promise, hence it will not work in Node.js < 4 without polyfill.



Posted on Utopian.io - Rewarding Open Source Contributors

Github.js provides a minimal higher-level wrapper around Github's A... | Ecency