aping-plugin-github
v0.8.0
Published
GitHub plugin for apiNG
Downloads
4
Maintainers
Readme
apiNG-plugin-github is a GitHub Data API v3 plugin for apiNG.
Information
- Supported apiNG models:
repo
- This plugin supports the
get-native-data
parameter - This plugin may needs an access token :warning:
- Used promise library: angular-github-api-factory (included in distribution files)
Documentation
- INSTALLATION
- Get file
- Include file
- Add dependency
- Add plugin
- ACCESS TOKEN
- Generate your
access_token
- Insert your
access_token
intoaping-config.js
- Generate your
- USAGE
- Models
- Requests
- Rate limit
1. INSTALLATION
a) Get file
b) Include file
c) Add dependency
d) Add the plugin
I. Get file
Install via either bower, npm, CDN (jsDelivr) or downloaded files:
bower install apiNG-plugin-github --save
npm install aping-plugin-github --save
- use CDN file
- download apiNG-plugin-github.zip
II. Include file
Include aping-plugin-github.min.js
in your apiNG application
<!-- when using bower -->
<script src="bower_components/apiNG-plugin-github/dist/aping-plugin-github.min.js"></script>
<!-- when using npm -->
<script src="node_modules/aping-plugin-github/dist/aping-plugin-github.min.js"></script>
<!-- when using cdn file -->
<script src="//cdn.jsdelivr.net/npm/aping-plugin-github@latest/dist/aping-plugin-github.min.js"></script>
<!-- when using downloaded files -->
<script src="aping-plugin-github.min.js"></script>
III. Add dependencies
Add the module jtt_aping_github
as a dependency to your app module:
angular.module('app', ['jtt_aping', 'jtt_aping_github']);
IV. Add the plugin
Add the plugin's directive aping-github="[]"
to your apiNG directive and configure your requests
<aping
template-url="templates/repo.html"
model="repo"
items="20"
aping-github="[{'user':'JohnnyTheTank'}]">
</aping>
2. ACCESS TOKEN
I. Generate your access_token
- Login on github.com
- Open github.com/settings/tokens/new
- Remove all scopes except public_repo
- Generate your access_token
II. Insert your access_token
into aping-config.js
Create and open js/apiNG/aping-config.js
in your application folder. It should be look like this snippet:
angular.module('jtt_aping').config(['$provide', function ($provide) {
$provide.value("apingDefaultSettings", {
apingApiKeys : {
github: [
{'access_token':'<YOUR_GITHUB_ACCESS_TOKEN>'}
],
//...
}
});
}]);
:warning: Replace <YOUR_GITHUB_ACCESS_TOKEN>
with your github access_token
3. USAGE
I. Models
Supported apiNG models
| model | content | support | max itemsper request | (native) default itemsper request |
|----------|---------|---------|--------|---------|
| repo
| repositories | full | 100
| 30
|
| user
| users | full | 100
| 30
|
support:
- full: the source platform provides a full list with usable results
- partly: the source platform provides just partly usable results
II. Requests
Every apiNG plugin expects an array of requests as html attribute.
Requests by User
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| user
| JohnnyTheTank
| | GitHub username | no |
| repo
| apiNG
| | Limits the request to specific GitHub repository name | yes |
| items
| 75
| 30
| Items per request (0
-100
) | yes |
Sample requests:
[{'user':'JohnnyTheTank'}, {'user':'xremix', 'items':10}]
[{'user':'JohnnyTheTank', 'repo':'apiNG'}]
[{'user':'JohnnyTheTank'}]
Requests by Search
| parameter | sample | default | description | optional |
|----------|---------|---------|---------|---------|
| search
| bootstrap
| | The search keywords, as well as any qualifierse | no |
| sort
| stars
| | The sort field. One of stars
, forks
, or updated
. Default: results are sorted by best match | yes |
| order
| asc
| desc
| The sort order if sort
parameter is provided. One of asc
or desc
| yes |
| items
| 75
| 30
| Items per request (0
-100
) | yes |
Sample requests:
[{'search':'apiNG', 'sort':'stars', 'order':'desc', 'items':50}]
[{'search':'JohnnyTheTank', 'items':10}]
III. Rate limit
Visit the official GitHub Data API documentation
For requests using Basic Authentication or OAuth, you can make up to 5,000 requests per hour.
Licence
MIT