Sobre o projeto

pnpm é um gerenciador de pacotes projetado para velocidade e eficiência de espaço em disco. Ao contrário dos gerenciadores de pacotes tradicionais que duplicam dependências entre projetos, o pnpm armazena todos os arquivos em um único armazenamento endereçável por conteúdo no disco e os vincula aos node_modules do projeto usando hard-links ou reflinks. Essa abordagem garante que, se vários projetos usarem a mesma versão de um pacote, ele seja armazenado apenas uma vez. As principais capacidades incluem: - Armazenamento Eficiente: Apenas arquivos que diferem entre versões são adicionados ao armazenamento, economizando espaço significativo em disco. - Rigor: Os pacotes só podem acessar dependências explicitamente especificadas em seu package.json. - Determinismo: Utiliza um arquivo pnpm-lock.yaml para garantir instalações consistentes. - Suporte a Monorepo: Recursos integrados otimizados para gerenciar workspaces. - Gerenciamento de Runtime: Funciona como um gerenciador de versões do Node.js. - Multiplataforma: Suporta Windows, Linux e macOS. - Port Experimental em Rust: Inclui o 'pacquet', um port de CLI escrito em Rust. Benchmarks de desempenho indicam que o pnpm pode ser até 2x mais rápido que alternativas como npm e Yarn classic.