Socket
Socket
Sign inDemoInstall

download

Package Overview
Dependencies
236
Maintainers
3
Versions
70
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    download

Download and extract files effortlessly


Version published
Weekly downloads
1.9M
decreased by-3.06%
Maintainers
3
Install size
4.04 MB
Created
Weekly downloads
 

Package description

What is download?

The 'download' npm package is a utility that allows you to download files over HTTP or HTTPS. It is a high-level function that abstracts away the complexity of making HTTP requests and handling streams, making it easier to download files.

What are download's main functionalities?

Downloading files

This feature allows you to download files from a given URL and save them to a specified directory. The function returns a promise that resolves when the download is complete.

const download = require('download');

download('https://example.com/somefile.png', 'dist').then(() => {
    console.log('File downloaded!');
});

Downloading and extracting archives

This feature enables the downloading of archive files like ZIP or TAR and automatically extracts them to a specified directory.

const download = require('download');

download('https://example.com/somearchive.zip', 'dist', { extract: true }).then(() => {
    console.log('Archive downloaded and extracted!');
});

Downloading files with options

This feature allows you to pass custom options such as headers, query parameters, and more, providing additional control over the HTTP request.

const download = require('download');

const options = {
    headers: { 'User-Agent': 'my-custom-agent' }
};

download('https://example.com/somefile.png', 'dist', options).then(() => {
    console.log('File downloaded with custom headers!');
});

Other packages similar to download

Readme

Source

download Build Status

Download and extract files effortlessly

Install

$ npm install --save download

Usage

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 (err, files) {
	if (err) {
		throw err;
	}

	console.log('File downloaded successfully!');
});

API

new Download(opts)

Creates a new Download instance.

.get(url, [dest])

Type: String

Add a file to download.

.dest(dir)

Type: String

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

.rename(name)

Type: Function|String

Rename your files using gulp-rename.

.run(cb)

Type: Function

Downloads your files and returns an error if something has gone wrong.

cb(err, files)

The callback will return an array of vinyl files.

Options

extract

Type: Boolean
Default: false

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

mode

Type: String

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

strip

Type: Number
Default: 0

Equivalent to --strip-components for tar.

CLI

$ 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

License

MIT © Kevin Mårtensson

Keywords

FAQs

Last updated on 09 Feb 2015

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc