download

Download and extract files effortlessly

download

Download and extract files effortlessly

$ npm install --save download

If you're fetching an archive you can set extract: true in options and it'll extract it for you.

var Download = require('download');
 
var download = new Download({extract: true, strip: 1, mode: '755'})
    .get('http://example.com/foo.zip')
    .get('http://example.com/cat.jpg')
    .dest('dest');
 
download.run(function (errfiles) {
    if (err) {
        throw err;
    }
 
    console.log('File downloaded successfully!');
});

Creates a new Download instance.

Type: Boolean
Default: false

If set to true, try extracting the file using decompress.

Type: String

Set mode on the downloaded file, i.e {mode: '755'}.

Type: Number
Default: 0

Equivalent to --strip-components for tar.

Type: String

Add a URL to download.

Type: String

Set an optional destination folder that will take precedence over the one set in .dest().

Type: String

Set the destination folder to where your files will be downloaded.

Type: Function|String

Rename your files using gulp-rename.

Type: Function

The callback will return an array of vinyl files.

$ npm install --global download
$ download --help
 
Usage
  download <url>
  download <url> > <file>
  download --out <directory> <url>
  cat <file> | download --out <directory>
 
Example
  download http://foo.com/file.zip
  download http://foo.com/cat.png > dog.png
  download --extract --strip 1 --out dest http://foo.com/file.zip
  cat urls.txt | download --out dest
 
Options
  -e, --extract           Try decompressing the file
  -o, --out               Where to place the downloaded files
  -s, --strip <number>    Strip leading paths from file names on extraction

MIT © Kevin Mårtensson