Download files using presets.
Install with npm
$ npm i fetch-files --save
var FetchFiles = require('fetch-files');
var downloader = new FetchFiles({destBase: 'foo/bar'});
Create an instance of FetchFiles with the given options.
Params
options {Object}Store a preset with the given configuration values.
Params
name {String}: Preset name, e.g. githubconfig {Object}returns {Object}: Returns FetchFiles for chainingExample
downloader.preset('github', {
url: 'https://raw.githubusercontent.com',
fn: function (preset, config) {
config.pathname = config.url.split('/').slice(-3).join('_');
return preset.url;
}
});
Add a URL to the download queue.
Params
url {String}config {Object}: The configuration to use for the URL.returns {Object}: Returns FetchFiles for chainingExample
downloader.queue('/assemble/assemble/v0.6.0/.verb.md', {preset: 'github'});
Fetch all files in the queue.
Params
cb {Function}: callbackreturns {Object}: Returns FetchFiles for chainingExample
downloader.fetch(function (err, res) {
console.log(res);
});
Fetch three files from three different GitHub repos:
var FetchFiles = require('fetch-files');
var downloader = new FetchFiles({destBase: 'foo/bar'});
downloader.preset('github', {
url: 'https://raw.githubusercontent.com',
fn: function (preset, config) {
config.pathname = config.url.split('/').slice(-3).join('_');
return preset.url;
}
})
.queue('/assemble/assemble/v0.6.0/.verb.md', {preset: 'github'})
.queue('/jonschlinkert/template/master/.verb.md', {preset: 'github'})
.queue('/verbose/verb/master/.verb.md', {preset: 'github'})
.fetch(function (err, res) {
if (err) console.error(err);
console.log(res)
})
Install dev dependencies:
$ npm i -d && npm test
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue
Jon Schlinkert
Copyright © 2015 Jon Schlinkert Released under the MIT license.
This file was generated by verb-cli on August 19, 2015.