Home

Awesome

npm-pkgr

Build Status Dependency Status devDependency Status

npm-pkgr caches npm install results by hashing dependencies from package.json and npm-shrinkwrap.json.

If your package.json did not change from last build, then you will immediately get either:

.. to the latest build result located in ~/.npm-pkgr

npm-pkgr frees your deployments from npm network issues and will make your deploys run fast.

Usage

npm install -g npm-pkgr

Use npm-pkgr instead of npm install and you are done.

npm-pkgr

Hashes and finds the latest build corresponding to package.json and npm-shrinkwrap.json.

npm-pkgr --production

Hashes and finds the latest build corresponding to npm-shrinkwrap.json.

npm-pkgr --show-npm-output

Displays npm's output, if npm install is run.

Every other flag passed to npm-pkgr is passed down to the npm install command.

Cache folder

The cache folder used by npm-pkgr is ~/.npm-pkgr for the current user.

npm-pkgr prune

Removes cache folders older than a month (in your ~/.npm-pkgr folder)

Debug

DEBUG=npm-pkgr* npm-pkgr

Will give you some debug information.

strategy

Default strategy is to symlink $CWD/node_modules -> ~/.npm-pkgr/$hash/node_modules.

You can also get a full copy of the ~/.npm-pkgr/$hash/node_modules.

npm-pkgr --strategy=copy

Careful, if you --strategy copy, you will end up installing the copy package

symlinks

Use the --symlinks option if you wish make some files or folders from your project available during npm install.

For example if your project includes a local .cache folder for the npm cache and a node_shrinkwrap folder for pre-packaged modules, then you can use the following command to make those resources available when npm-pkgr runs npm install:

npm-pkgr --symlinks=.cache,node_shrinkwrap

cachepath

Use the --cachepath option if you want use a specific folder for the cache folder.

npm-pkgr --cachepath=/data/node-vXXX/.npm-pkgr

features