Awesome
github-content
Easily download files from github raw user content.
Install
Install with npm:
$ npm install --save github-content
Usage
var githubContent = require('github-content');
API
GithubContent
Create an instance of GithubContent to setup downloading of files.
Params
options
{Object}: Options to set on instance. Additional options passed to github-baseoptions.owner
{String}: Set the owner to be used for each file.options.repo
{String}: Set the repository to be used for each file.options.branch
{String}: Set the branch to be used for each file. Defaults tomaster
Example
var options = {
owner: 'doowb',
repo: 'github-content',
branch: 'master' // defaults to master
};
var gc = new GithubContent(options);
.file
Download a single file given the file name and repository options. File object returned will contain a .path
property with the file path passed in and a .contents
property with the contents of the downloaded file.
Params
path
{String}: file path to downloadoptions
{Object}: Additional options to base to github-base.get
method.cb
{Function}: Callback function takingerr
andfile
returns
{Object}this
: to enable chaining
Example
gc.file('package.json', function(err, file) {
if (err) return console.log(err);
console.log(file.path);
console.log(file.contents);
});
//=> package.json
//=> {
//=> "name": "github-content"
//=> ...
//=> }
.files
Download an array of files using the previous settings and the passed in file names. File objects returned will contain a .path
property with the file path passed in and a .contents
property with the contents of the downloaded file.
Params
files
{String|Array}: files to downloadoptions
{Object}: Additional options to base to github-base.get
method.cb
{Function}: Callback function takingerr
andfiles
returns
{Object}this
: to enable chaining
Example
gc.files(['package.json', 'index.js'], function(err, files) {
if (err) return console.log(err);
console.log(files.length);
console.log(files[0].path);
console.log(files[0].contents);
});
//=> 2
//=> package.json
//=> {
//=> "name": "github-content"
//=> ...
//=> }
About
Related projects
github-base: JavaScript wrapper that greatly simplifies working with GitHub's API. | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)
To generate the readme, run the following command:
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Running tests
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
$ npm install && npm test
Author
Brian Woodward
License
Copyright © 2017, Brian Woodward. Released under the MIT License.
This file was generated by verb-generate-readme, v0.6.0, on September 11, 2017.