O que é o npm? O gerenciador de pacotes do Node.js explicado
O npm é o gerenciador de pacotes padrão do Node.js: ele instala as bibliotecas das quais seu projeto depende e executa os scripts que fazem o build e o testam.
O npm (abreviação de Node Package Manager) vem junto com o Node.js e é a ferramenta mais usada para instalar pacotes JavaScript. Ele lê um manifesto de projeto, baixa as versões corretas de cada dependência e oferece um executor de comandos para scripts de build e teste. Se você já rodou "npm install", já usou o npm.
O que é o npm
O npm tem três partes: uma ferramenta de linha de comando, um registro online com mais de dois milhões de pacotes e o formato de manifesto package.json que descreve um projeto. Quando você instala um pacote, o npm o busca no registro (registry.npmjs.org por padrão) e o coloca em node_modules, junto com tudo de que esse pacote depende.
Como funciona
Suas dependências são declaradas no package.json. As versões resolvidas exatas são fixadas no package-lock.json, que o npm escreve para que cada máquina instale a árvore idêntica. Rodar "npm install" resolve e baixa tudo; rodar "npm ci" instala estritamente a partir do lockfile para builds reproduzíveis e é a escolha certa em automação.
Um exemplo prático
Um projeto típico declara seu ferramental e scripts no package.json e depois usa o npm para instalá-los e executá-los.
{
"name": "my-app",
"scripts": {
"test": "vitest run",
"build": "vite build"
},
"dependencies": { "react": "^18.0.0" }
}
# install and run a script
npm ci
npm run buildPapel em CI/CD
Em um pipeline, o npm restaura dependências e executa os scripts de build e teste. O comando canônico de CI é "npm ci", porque instala exatamente o que o lockfile especifica e falha ruidosamente se o package.json e o lockfile divergirem. Fazer cache do diretório de cache do npm entre execuções evita rebaixar pacotes inalterados e acelera cada job.
Alternativas
Yarn e pnpm são alternativas diretas que leem o mesmo package.json. O pnpm é notavelmente mais rápido e mais eficiente em disco graças a um armazenamento endereçado por conteúdo; o Yarn foi pioneiro nos lockfiles e oferece o Plug and Play. A maioria das equipes ainda recorre ao npm primeiro porque ele não exige nenhuma instalação extra.
Principais conclusões
- O npm é o gerenciador de pacotes padrão que vem junto com o Node.js.
- O package.json declara dependências e scripts; o package-lock.json fixa as versões exatas.
- Use "npm ci" na CI para instalações rápidas e reproduzíveis a partir do lockfile.