pnpm
https://d33wubrfki0l68.cloudfront.net/2f3acb83b7d2349f2194bc38c0f22f295908dc33/89ceb/ja/img/pnpm-no-name-with-frame.svg
https://pnpm.io/ja/
Node.js 向けのパッケージマネージャ
ハードリンク,やシンボリックリンクを活用することで、ダウンロード数やディスクI/Oを抑制するなどの高速化のための工夫がされており、かなり高速に動作する
npm yarn のような workspace 機構を備えており Monorepo 構成のセットアップにも使える
corepack からインストール、及び有効化できるパッケージマネージャでもある
npm の有している機能はほぼすべてが使用できるが、yarn にある Zero-Installs のみは未サポート
https://pnpm.io/ja/feature-comparison
pnpm install の結果は npm と異なりパッケージごとに分離された状態で構築される
npm の場合は巻き上げられた(=Hoisted)状態でフラットに構築される
動作には基本的に影響を与えないとされている
パッケージインストール周りのベンチマークは以下を参照のこと (pnpm > yarn > npm の順で早い)
https://pnpm.io/ja/benchmarks
参考
https://youtu.be/WVnsM7Mp3JM
関連
npmの依存関係について勘違いしていたこと