/NpmDownloader

Download packages from NPM as tarballs

Primary LanguagePythonMIT LicenseMIT

NPM Downloader

Download packages from NPM for private npm servers such as verdaccio and sinopia

  • Python 3.5+ only

Installation

Install using pip:

$ pip install npmdownloader

Usage

Downloading using the CLI:

$ python -m npmdownloader -f [PACKAGE_FILE_LIST] -o [DOWNLOAD_DIR] -c [NUM_OF_WORKER_PROCESSES]

Downloading a package using code:

from npmdownloader import NpmPackageDownloader

downloader = NpmPackageDownloader('out_dir')
# Download a package and its depedencies as tarballs
# if a package tarball already exists, the download will be skipped
downloader.download('react', version='15.4.1')

Downloading multiple packages using code:

  • packages_list.txt (shown below) should contain 1 package name per line.
from npmdownloader import MultiPackageDownloader

downloader = MultiPackageDownloader('packages_list.txt', 'out_dir', num_of_workers=4)
downloader.start()
downloader.wait()
print("Multi Download Complete.")