ghissues

1.1.4 • Public • Published

ghissues

Build Status

A node library to interact with the GitHub issues API

NPM

Example usage

const ghissues     = require('ghissues')
    , authOptions = { user: 'rvagg', token: '24d5dee258c64aef38a66c0c5eca459c379901c2' }
 
// list all issues in a repo
ghissues.list(authOptions, 'rvagg', 'jsonist', function (err, issuelist) {
  // Array of issues data for 'rvagg/jsonist'
  console.log(issuelist)
})
 
// get issue data by number (not internal GitHub id)
ghissues.get(authOptions, 'rvagg', 'nan', 123, function (err, issue) {
  // object containing full issue #123
  console.log(issue)
})
 
// create an issue
var data = {
    title : 'New issue bro'
  , body  : 'Pretty **slick** `markdown`'
}
ghissues.create(authOptions, 'rvagg', 'jsonist', data, function (err, issue) {
  // data for new issue
  console.log(issue)
})
 
// list all comments in an issue
ghissues.listComments(authOptions, 'rvagg', 'jsonist', 47, function (err, commentlist) {
  // Array of comment data for 'rvagg/jsonist#47'
  console.log(commentlist)
})
 
// create a comment
var body = 'Whoa dude, this is awesomesauce!! :+1:'
ghissues.createComment(authOptions, 'rvagg', 'jsonist', 101, body, function (err, issue) {
  // data for new comment in 'rvagg/jsonist#101'
  console.log(issue)
})

The auth data is compatible with ghauth so you can just connect them together to make a simple command-line application:

const ghauth      = require('ghauth')
    , ghissues    = require('ghissues')
    , authOptions = {
          configName : 'issue-lister'
        , scopes     : [ 'user' ]
      }
 
ghauth(authOptions, function (err, authData) {
  ghissues.list(authData, 'rvagg', 'node-levelup', function (err, list) {
    console.log('Issues in rvagg/node-levelup:')
    list.forEach(function (i) {
      console.log('#%s: %s', i.number, i.title) 
    })
  })
})

License

ghissues is Copyright (c) 2014 Rod Vagg @rvagg and licensed under the MIT licence. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.

Readme

Keywords

Package Sidebar

Install

npm i ghissues

Weekly Downloads

2,790

Version

1.1.4

License

MIT

Unpacked Size

16 kB

Total Files

7

Last publish

Collaborators

  • ralphtheninja
  • rvagg