npm-tarball

0.1.1 • Public • Published

npm-tarball

Download tarball of npm registry with stream/promise api

Installation

npm install npm-tarball --save

API

  • resolveUri(packageName, semver) -> Promise<uri>
import {resolveUri} from 'npm-tarball'
 
resolveUri('jquery').then(uri => console.log(uri))
// https://registry.npmjs.org/jquery/-/jquery-2.2.4.tgz
 
resolveUri('jquery', 1).then(uri => console.log(uri))
// https://registry.npmjs.org/jquery/-/jquery-1.12.4.tgz
 
resolveUri('jquery', '~2.1').then(uri => console.log(uri))
// https://registry.npmjs.org/jquery/-/jquery-2.1.4.tgz
  • fetch(packageName, semver) -> Promise<tarballBuffer>
import {fetch} from 'npm-tarball'
import {writeFileSync} from 'fs'
 
fetch('jquery').then(buffer => writeFileSync('jquery-latest.tgz', buffer))
fetch('jquery', 1).then(buffer => writeFileSync('jquery-v1.tgz', buffer))
fetch('jquery', '~2.1').then(buffer => writeFileSync('jquery-v2.1.tgz', buffer))
  • new NpmTarball(packageName, semver) -> tarballReadableStream
  • createReadStream(packageName, semver) -> tarballReadableStream
import {createReadStream} from 'npm-tarball'
import {createWriteStream} from 'fs'
 
createReadStream('jquery').pipe(createWriteStream('jquery-latest.tgz'))
createReadStream('jquery', 1).pipe(createWriteStream('jquery-v1.tgz'))
createReadStream('jquery', '~2.1').pipe(createWriteStream('jquery-v2.1.tgz'))

Development

Requirement global

  • NodeJS v5.11.1
  • Npm v3.8.6 (or pnpm)
git clone https://github.com/59naga/npm-tarball
cd npm-tarball
npm install
 
npm test
npm run lint

License

MIT

Package Sidebar

Install

npm i npm-tarball

Weekly Downloads

1

Version

0.1.1

License

MIT

Last publish

Collaborators

  • 59naga