Repolode
pnpm

pnpm/pnpm

Gerenciador de pacotes rápido e econômico no uso de disco para Node.js, que vincula pacotes de um armazenamento compartilhado endereçável por conteúdo, com isolamento estrito de dependências e suporte a monorepos.

Alternativa open source a:npmYarn

Estrelas
36,915
Forks
1,960
Issues abertas
199
Último commit
há 12 horas

O que é?

pnpm é um gerenciador de pacotes para projetos JavaScript e Node.js, uma alternativa ao npm e ao Yarn. Em vez de copiar cada dependência para o node_modules de cada projeto, ele armazena todos os arquivos dos pacotes uma única vez em um armazenamento endereçável por conteúdo no disco e cria vínculos para esses arquivos nos projetos, evitando duplicar arquivos idênticos entre projetos.

Ele impõe uma resolução estrita de dependências: um pacote só pode importar dependências declaradas explicitamente no próprio package.json, o que identifica imports não declarados que podem passar despercebidos em estruturas planas de node_modules. As instalações são registradas em um arquivo de lock pnpm-lock.yaml para garantir builds reproduzíveis. O suporte integrado a workspaces torna o pnpm adequado para monorepos.

O projeto oferece suporte a Windows, Linux e macOS. Também inclui o pnpm runtime para gerenciar versões do Node.js e uma versão experimental do CLI em Rust chamada pacquet.

Recursos principais

  • 01Armazena os arquivos dos pacotes uma única vez em um armazenamento endereçável por conteúdo e cria vínculos para eles nos projetos.
  • 02Isola estritamente as dependências para que os pacotes só acessem as dependências declaradas no package.json.
  • 03Garante instalações determinísticas por meio do arquivo de lock pnpm-lock.yaml.
  • 04Oferece suporte integrado a workspaces para monorepos.
  • 05Gerencia versões do Node.js por meio do pnpm runtime.
  • 06Funciona em Windows, Linux e macOS.

Casos de uso

  • Instalar dependências em monorepos grandes com muitos pacotes inter-relacionados.
  • Reduzir o uso de disco em máquinas com muitos projetos JavaScript que compartilham bibliotecas.
  • Exigir declarações estritas de dependências em uma base de código de equipe.
  • Substituir npm ou Yarn em pipelines de CI para acelerar as instalações.

Início rápido

  1. 1

    Siga o guia oficial de instalação

Antes de usar

  • pacquet, a versão em Rust, é experimental; por isso, para produção, é mais seguro usar a CLI já consolidada.

Tópicos

Perguntas frequentes

O que é pnpm?
Gerenciador de pacotes rápido e econômico no uso de disco para Node.js, que vincula pacotes de um armazenamento compartilhado endereçável por conteúdo, com isolamento estrito de dependências e suporte a monorepos. pnpm é um gerenciador de pacotes para projetos JavaScript e Node.js, uma alternativa ao npm e ao Yarn. Em vez de copiar cada dependência para o node_modules de cada projeto, ele armazena todos os arquivos dos pacotes uma única vez em um armazenamento endereçável por conteúdo no disco e cria vínculos para esses arquivos nos projetos, evitando duplicar arquivos idênticos entre projetos.
pnpm é gratuito? Qual é a licença?
pnpm é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
pnpm ainda é mantido?
Manutenção ativa. O último commit de pnpm foi em 24 de out. de 2026.
Para que posso usar pnpm?
Instalar dependências em monorepos grandes com muitos pacotes inter-relacionados. Reduzir o uso de disco em máquinas com muitos projetos JavaScript que compartilham bibliotecas. Exigir declarações estritas de dependências em uma base de código de equipe. Substituir npm ou Yarn em pipelines de CI para acelerar as instalações.
Como instalar pnpm?
Siga o guia oficial de instalação
Onde consigo pnpm?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/pnpm/pnpm

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados