parse Github API Event Types.
npm install parse-github-eventSmall library to parse Event Types from Github API response.
- Parse event json and built message and html_url without addtional request
- Create human-readable message like GitHub's timeline from event json
`` sh`
npm install parse-github-event
Response json object of GitHub Events API.
` json`
{
"id": "2070416128",
"type": "PullRequestEvent",
"actor": {
"id": 1062518,
"login": "pivotal-brian-croom",
"gravatar_id": "92d36bd6d9b53539fcec282452872710",
"url": "https://api.github.com/users/pivotal-brian-croom",
"avatar_url": "https://avatars.githubusercontent.com/u/1062518?"
},
"repo": {
"id": 708684,
"name": "pivotal/cedar",
"url": "https://api.github.com/repos/pivotal/cedar"
},
"payload": {
"action": "opened",
"number": 231,
"pull_request": {
"url": "https://api.github.com/repos/pivotal/cedar/pulls/231",
"body": "- Common code consolidated into CDROTestRunner and CDROTestIPhoneRunner\r\n- CDROTestIPhoneRunner subclasses CDROTestRunner\r\n[#67878220]\r\n\r\nThoughts?\r\n@idoru, @jeffh",
"created_at": "2014-04-24T05:01:39Z",
"updated_at": "2014-04-24T05:01:39Z",
...
}
` js`
var parseGithubEvent = require("parse-github-event");
// responseJSON is come from https://developer.github.com/v3/activity/events/
var parsed = parseGithubEvent.parse(responseJSON);
/*
{
text: 'opened issue on %%repository%%',
data: { repository: 'pivotal/cedar' },
html_url : 'https://github.com/pivotal/cedar/pull/231'
}
*/
It's bonus method.
` js`
var parseGithubEvent = require("parse-github-event");
var result = parseGithubEvent.compile(json);
// pivotal-brian-croom opened issue on pivotal/cedar
Create one-line message and html_url from event response.
- azu/github-to-twitter-lambda: Lambda bot that fetch own GitHub notifications/events and post to Twitter.
- azu/faao: Faao is a GitHub issue/pull-request client on Electron.
- lawvs/buddy-github-events: View broadcast/received GItHub events from other people or organizations.
1. Fork it!
2. Create your feature branch: git checkout -b my-new-featuregit commit -am 'Add some feature'
3. Commit your changes: git push origin my-new-feature`
4. Push to the branch:
5. Submit a pull request :D
MIT
Thanks for alindeman/github-timeline-widget.
Use these as a reference
* https://github.com/FenrirUnbound/github-feed/tree/FixPath/test/mocks
* https://github.com/limbo0312/gitBox/tree/master/ioctocat2/iOctocatUnitTests/Fixtures
* https://github.com/octokit/go-octokit/tree/master/fixtures
* https://github.com/chamerling/QuickHubApp
* https://github.com/linyows/octospy/tree/master/spec/fixtures
* https://github.com/octokit/octokit.objc/tree/master/OctoKitTests/Stubs
* https://github.com/octokit/octokit.net/tree/master/Octokit.Tests/Fixtures