- Publicado em
- · 10 de julho de 2026
Gerenciadores de Pacotes: npm, Yarn, pnpm e Mais
- Blog

- Henrico Piubello
- Henrico Piubello
- Especialista de TI - Grupo Voitto
Especialista de TI - Grupo Voitto

Um gerenciador de pacotes é uma ferramenta que automatiza a instalação, atualização e remoção de bibliotecas e programas, resolvendo dependências de forma consistente. No ecossistema JavaScript, npm, Yarn e pnpm dominam; Chocolatey e Homebrew fazem o mesmo no Windows e no macOS.
- O que é um gerenciador de pacotes?
- npm, Yarn ou pnpm: qual escolher?
- Como funciona o npm?
- Yarn: a alternativa que popularizou o lockfile
- Por que o pnpm economiza espaço em disco?
- Como instalar programas no Windows com Chocolatey?
- Como funciona o Homebrew no macOS?
- Outros gerenciadores: Pip, Conda, RubyGems e NuGet
O que é um gerenciador de pacotes?
Um gerenciador de pacotes é um software que instala, atualiza, configura e remove bibliotecas, ferramentas e aplicativos de forma automatizada. Ele resolve a árvore de dependências de um projeto — cada pacote pode depender de dezenas de outros — e garante que todos os ambientes usem exatamente as mesmas versões, do notebook do desenvolvedor ao servidor de produção.
Na prática, o gerenciador de pacotes lê um arquivo de manifesto (como o package.json) e grava um lockfile com as versões exatas instaladas. Combinado ao versionamento semântico, esse mecanismo permite atualizar dependências com previsibilidade e reproduzir o mesmo ambiente em qualquer máquina, o que torna a colaboração entre desenvolvedores muito mais segura.
npm, Yarn ou pnpm: qual escolher?
Para a maioria dos projetos JavaScript, o npm é a escolha padrão por já vir instalado com o Node.js e ter o maior ecossistema. O pnpm é a melhor opção quando velocidade de instalação e economia de disco importam — caso típico de monorepos e pipelines de CI (Integração Contínua). O Yarn permanece sólido em bases de código que já o adotaram.
| Ferramenta | Ponto forte | Quando usar |
|---|---|---|
| npm | Padrão do Node.js, maior adoção | Maioria dos projetos JavaScript |
| Yarn | Workspaces maduros e cache offline | Monorepos que já o utilizam |
| pnpm | Instalação rápida e economia de disco | Monorepos grandes e CI |
| Chocolatey | Automação de programas no Windows | Configurar máquinas Windows |
| Homebrew | Fórmulas simples no macOS e Linux | Ferramentas de linha de comando |
| Pip | Padrão do ecossistema Python | Bibliotecas e projetos Python |
Os números confirmam essa hierarquia: segundo o Stack Overflow Developer Survey 2025, o npm é usado por 56,8% dos desenvolvedores respondentes, contra 21,1% do Yarn e 13,4% do pnpm. Entre os gerenciadores de sistema, o Homebrew aparece com 25,7% e o Chocolatey com 11%.
Como funciona o npm?
O npm (Node Package Manager) funciona em duas partes: um registro público que hospeda os pacotes e uma ferramenta de linha de comando que instala, publica e atualiza essas bibliotecas em projetos Node.js. A documentação oficial do npm o define como "the world's largest software registry" — o maior registro de software do mundo.
O fluxo de trabalho gira em torno do package.json: o comando npm install lê as dependências declaradas ali, baixa os pacotes do registro e registra as versões exatas no package-lock.json. O npm também executa scripts de build, teste e publicação, cobrindo desde utilitários básicos até frameworks completos.
O ecossistema inclui ainda o npx, que executa pacotes sem exigir instalação global — aqui no CodeCrush já publicamos um guia sobre o npx e a execução de pacotes npm.
Yarn: a alternativa que popularizou o lockfile
O Yarn surgiu em 2016, criado pelo Facebook, para resolver problemas de velocidade e consistência que o npm apresentava na época. O Yarn introduziu o lockfile determinístico (yarn.lock), o cache offline e a instalação paralela de pacotes — ideias tão bem-sucedidas que o próprio npm as incorporou nas versões seguintes.
Hoje o Yarn moderno (conhecido como Yarn Berry) vai além: oferece o modo Plug'n'Play, que elimina a pasta node_modules tradicional, e workspaces nativos para monorepos. Para times que já dependem desses recursos, o Yarn continua sendo uma escolha produtiva e confiável, ainda que sua fatia de uso venha diminuindo diante do avanço do pnpm.
Por que o pnpm economiza espaço em disco?
O pnpm economiza espaço porque armazena cada versão de pacote uma única vez em um repositório global endereçado por conteúdo e cria links físicos (hard links) para o node_modules de cada projeto, em vez de duplicar arquivos — o mecanismo está descrito na documentação de motivação do pnpm. Dez projetos que usam a mesma dependência compartilham uma única cópia em disco.
A velocidade acompanha a economia: nos benchmarks oficiais do pnpm, uma instalação limpa que leva 31,3 segundos com o npm é concluída em 7,7 segundos com o pnpm. Essa diferença, multiplicada por centenas de builds de CI por dia, explica por que o pnpm virou o favorito de monorepos de grande escala.
Como instalar programas no Windows com Chocolatey?
O Chocolatey é um gerenciador de pacotes para Windows que instala, atualiza e remove programas por meio de uma CLI (interface de linha de comando), trazendo ao Windows uma experiência equivalente à dos sistemas Unix. O fluxo básico tem quatro passos:
- Abra o PowerShell como administrador.
- Execute o script de instalação disponível na documentação oficial do Chocolatey.
- Instale programas com um único comando, como
choco install nodejs. - Atualize tudo de uma vez com
choco upgrade all.
Quem ainda não domina o PowerShell pode começar pelo nosso guia de comandos fundamentais de terminal no Windows, Linux e Mac — o Chocolatey fica muito mais poderoso quando combinado com scripts de provisionamento de máquina.
Como funciona o Homebrew no macOS?
O Homebrew instala softwares no macOS (e no Linux) por meio de fórmulas: scripts escritos em Ruby que descrevem de onde baixar cada programa e como compilá-lo ou instalá-lo. Com um único comando, como brew install git, o usuário obtém a ferramenta e todas as suas dependências resolvidas automaticamente.
O site oficial do Homebrew resume a proposta: instalar aquilo de que você precisa e que a Apple não incluiu no sistema. Além das fórmulas para ferramentas de linha de comando, o Homebrew oferece os casks, que instalam aplicativos gráficos completos — de navegadores a editores de código — mantendo tudo atualizável com brew upgrade.
Outros gerenciadores: Pip, Conda, RubyGems e NuGet
Fora do universo JavaScript e dos sistemas operacionais, cada ecossistema tem seu gerenciador de referência:
- Pip — o gerenciador padrão do Python, integrado ao PyPI (Python Package Index). É o caminho usual para instalar bibliotecas como NumPy e TensorFlow.
- Conda — voltado a ciência de dados, gerencia ambientes virtuais isolados e simplifica a instalação de bibliotecas complexas como pandas e scikit-learn.
- RubyGems — distribui as gems do ecossistema Ruby, essenciais em aplicações Ruby on Rails, como Devise para autenticação.
- NuGet — o gerenciador do mundo .NET, usado para integrar bibliotecas como Entity Framework e ASP.NET Core.
A lição é a mesma em todos os casos: escolher a ferramenta certa para o contexto do projeto e usá-la de forma consistente vale mais do que qualquer preferência pessoal.
Conclusão
Gerenciadores de pacotes são infraestrutura invisível: quando bem escolhidos, ninguém percebe que existem. A recomendação prática é direta — use npm por padrão, migre para pnpm quando o tempo de instalação ou o espaço em disco virarem gargalo, e padronize Chocolatey ou Homebrew para provisionar as máquinas do time. O erro caro não é escolher a ferramenta "errada", e sim misturar gerenciadores no mesmo projeto ou deixar o lockfile fora do controle de versão.
## faq
Perguntas frequentes
Para que serve um gerenciador de pacotes?
Um gerenciador de pacotes serve para instalar, atualizar e remover bibliotecas e programas de forma automática, resolvendo as dependências entre eles. Ele garante que todos os desenvolvedores de um projeto usem as mesmas versões de cada pacote, o que evita o clássico problema do "funciona na minha máquina" e facilita a colaboração.
npm, Yarn ou pnpm: qual escolher em 2026?
O npm continua sendo a escolha segura para a maioria dos projetos por vir instalado com o Node.js e ter a maior comunidade. O pnpm é a melhor opção para monorepos e pipelines de CI, pois instala mais rápido e economiza disco. O Yarn segue relevante em bases de código que já o adotaram.
Qual a diferença entre Chocolatey e Homebrew?
O Chocolatey gerencia a instalação de programas no Windows via linha de comando, enquanto o Homebrew faz o mesmo no macOS e também no Linux. Ambos automatizam download, instalação e atualização de softwares, mas o Chocolatey empacota instaladores do Windows e o Homebrew usa fórmulas escritas em Ruby.
O que acontece se eu misturar npm e Yarn no mesmo projeto?
Misturar gerenciadores gera lockfiles conflitantes (package-lock.json e yarn.lock), e cada membro do time pode acabar instalando versões diferentes das dependências. A prática recomendada é escolher um único gerenciador por projeto, versionar apenas o lockfile dele e documentar a escolha no README para toda a equipe.
Preciso desinstalar o npm para usar o pnpm?
Não. O pnpm é uma ferramenta independente e convive com o npm na mesma máquina — inclusive pode ser instalado via npm, com o comando npm install -g pnpm. O que não se recomenda é alternar gerenciadores dentro do mesmo projeto, pois cada um mantém seu próprio formato de lockfile.
Temas deste artigo
## continue lendo
Artigos relacionados
Continue navegando
Artigo anterior

Comandos de Terminal: Guia para Windows, Mac e Linux
Guia dos comandos essenciais de terminal: dir, cd e ipconfig no CMD do Windows; ls, cp, mv e grep no Terminal do Mac e no shell do Linux.
Leia maisPróximo artigo

Servidores e AWS: como programar na nuvem em 2026
Servidores fornecem dados e serviços pela rede; a AWS hospeda essa infraestrutura na nuvem, líder com 28% do mercado. Veja tipos, DevOps e backend.
Leia maisSobre o autor



