Package Exports
- pnpm
- pnpm/lib/bin/pnpm.js
- pnpm/lib/logger
- pnpm/package.json
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (pnpm) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
pnpm
Performant npm installations
pnpm is a fast implementation of npm install
. It is loosely based off ied.
Read our contributing guide if you're looking to contribute.
Follow the pnpm Twitter account for updates.
Table of Contents
Background
pnpm
maintains a flat storage of all your dependencies in node_modules/.store
. They are then symlinked wherever they're needed.
This nets you the benefits of less disk space usage, while keeping your node_modules
clean.
See store layout for an explanation.
.
└─ node_modules/
├─ .store/
│ ├─ chalk@1.1.1/_/
│ │ └─ node_modules/
│ │ ├─ ansi-styles -> ../../../ansi-styles@2.1.0/_
│ │ └─ has-ansi -> ../../../has-ansi@2.0.0/_
│ ├─ ansi-styles@2.1.0/_/
│ └─ has-ansi@2.0.0/_/
└─ chalk -> .store/chalk@1.1.1/_
Install
Install it via npm.
npm install -g pnpm
Usage
Use pnpm
in place of npm
. It overrides pnpm i
, pnpm install
and some other command, the rest will passthru to npm
.
pnpm install lodash
Custom registries
pnpm uses whatever npm's configured to use as its registry. See: custom registries.
Preview release
pnpm
will stay in <1.0.0
until it's achieved feature parity with npm install
. See roadmap for details.
Benchmark
time npm i babel-preset-es2015 browserify chalk debug minimist mkdirp
66.15 real 15.60 user 3.54 sys
time pnpm i babel-preset-es2015 browserify chalk debug minimist mkdirp
11.04 real 6.85 user 2.85 sys
Prior art
License
MIT © Rico Sta. Cruz and contributors