Command Palette

Search for a command to run...

position in category
#4

Fast, disk-space-efficient package manager for JavaScript and Node.js. Uses a content-addressable store to deduplicate packages globally with symlinks in each project, reducing install time and disk usage compared to copying dependencies into every node_modules.

Adopted by Vite, Vue, Nuxt, Next.js, Prisma, Astro, Nx, and Turborepo for its performance and strict dependency resolution. Unlike npm or Yarn, it enforces that only declared dependencies are accessible, eliminating phantom dependencies and tightening supply-chain hygiene. pnpm stays npm-compatible: the same package.json works across package managers.

Key capabilities:

  • Content-addressable storage with symlinked node_modules for fast installs and shared packages across projects
  • Built-in workspace support for monorepos with isolated dependencies per package
  • Native Node.js version management via pnpm env
  • Overrides, patching, and catalogs for dependency control and version pinning
  • JSR registry support and config dependencies for shared tooling versions

Developers use it to speed up installs and shrink CI times, especially in monorepos. It fits well with tooling like Turborepo and Nx for parallel tasks and caching. Teams migrating from npm or Yarn keep their package.json and lockfiles while gaining stricter dependency isolation and less disk usage.

GitHub Repositories
2.4K
-8.2%
Trending down this week
Removed in 214 repos