Instalando Node.js e npm
Como baixar e instalar Node.js e npm no macOS e Windows - incluindo o que LTS significa, os diferentes métodos de instalação e qual escolher.
Busque em todas as páginas da documentação
Como baixar e instalar Node.js e npm no macOS e Windows - incluindo o que LTS significa, os diferentes métodos de instalação e qual escolher.
🤖 Read the SystemsArchitect.io Blog for over 100+ cloud architecture articles 🔥
Cartão de receita de referência rápida - pronto para copiar e colar.
# Verifica se o Node.js já está instalado
node --version
# Verifica a versão do npm
npm --version
# Instala o Node.js via nvm (recomendado para macOS/Linux)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
nvm install --lts
nvm use --lts
# Verifica a instalação
node --version # ex: v22.15.0
npm --version # ex: 10.9.2Quando usar isso: Antes de iniciar qualquer projeto React, Next.js ou Node.js, você precisa ter Node.js e npm instalados. Este é sempre o passo zero.
| Plataforma | Link | Notas |
|---|---|---|
| Downloads oficiais | https://nodejs.org/en/download | Instaladores para todas as plataformas |
| macOS / Linux (nvm) | https://github.com/nvm-sh/nvm | Gerenciador de versões - recomendado |
| Windows (nvm-windows) | https://github.com/coreybutler/nvm-windows | Gerenciador de versões específico para Windows |
| macOS (Homebrew) | brew install node | Versão única via Homebrew |
| Windows (winget) | winget install OpenJS.NodeJS.LTS | Versão única via winget |
| Windows (Chocolatey) | choco install nodejs-lts | Versão única via Chocolatey |
| Volta | https://volta.sh | Gerenciador de versões multiplataforma |
| fnm | https://github.com/Schniz/fnm | Gerenciador de versões rápido baseado em Rust |
Sempre baixe de nodejs.org ou de um gerenciador de versões confiável. A página de download oferece duas opções: LTS e Current.
LTS significa Long Term Support (Suporte de Longo Prazo). O Node.js segue um cronograma de lançamento onde as versões principais de número par (18, 20, 22, 24...) entram em status LTS e recebem correções de bugs e patches de segurança por 30 meses. As versões de número ímpar (19, 21, 23...) são versões "Current" de curta duração que recebem suporte por apenas 6 meses.
| Faixa | Exemplo | Janela de Suporte | Melhor Para |
|---|---|---|---|
| LTS | Node 22.x | 30 meses de patches | Aplicativos de produção, equipes, estabilidade |
| Current | Node 23.x | ~6 meses | Testar novos recursos antecipadamente |
Regra geral: Sempre use a versão LTS mais recente, a menos que você tenha um motivo específico para usar a Current. Todas as implantações de produção, pipelines de CI e tutoriais neste cookbook assumem LTS.
npm (Node Package Manager) é o gerenciador de pacotes padrão que vem incluído em todas as instalações do Node.js. Ele faz três coisas:
package.json e package-lock.json.package.json (por exemplo, npm run dev, npm test).Quando você instala o Node.js, você ganha o npm gratuitamente. Você não precisa instalá-lo separadamente.
# Instala um pacote
npm install react
# Instala dependências de desenvolvimento
npm install --save-dev typescript
# Executa um script do package.json
npm run dev
# Instala todas as dependências do package.json
npm installnvm (Node Version Manager) permite que você instale e alterne entre várias versões do Node.js. Esta é a melhor opção para desenvolvedores que trabalham em vários projetos que podem exigir versões diferentes do Node.
# Instala o nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# Reinicie o terminal e, em seguida:
nvm install --lts # Instala a versão LTS mais recente
nvm use --lts # Ativa-a
nvm alias default lts/* # Torna-a o padrão para novos shells
# Alterne entre versões
nvm install 20 # Instala o Node 20
nvm use 20 # Alterna para o Node 20
nvm ls # Lista as versões instaladasO nvm instala o Node.js em ~/.nvm/, portanto, não requer sudo e evita problemas de permissão com pacotes globais.
brew install node # Instala a versão current mais recente
brew install node@22 # Instala uma versão LTS específicaSimples, mas gerencia apenas uma versão por vez. Se você precisar alternar entre versões, use o nvm em vez disso.
brew install fnm
fnm install --lts
fnm use --lts
# Adicione ao perfil do shell (~/.zshrc ou ~/.bashrc)
eval "$(fnm env --use-on-cd)"O fnm é escrito em Rust e é notavelmente mais rápido que o nvm para alternar versões. Ele também suporta arquivos .node-version e .nvmrc.
curl https://get.volta.sh | bash
volta install node@ltsO Volta fixa as versões das ferramentas por projeto em package.json, para que cada colaborador use a mesma versão automaticamente.
Baixe o arquivo .pkg de https://nodejs.org/en/download e execute-o. Instala o Node.js e o npm em todo o sistema em /usr/local/. Funciona, mas é mais difícil gerenciar várias versões e pode exigir sudo para instalações globais.
nvm-windows é um projeto separado do nvm (não é um port), mas fornece o mesmo fluxo de trabalho de alternância de versão.
.exenvm install lts # Instala a versão LTS mais recente
nvm use lts # Ativa-a
nvm list # Lista as versões instaladaswinget install OpenJS.NodeJS.LTSIntegrado ao Windows 11 e disponível para Windows 10. Instala uma única versão em todo o sistema.
choco install nodejs-ltsRequer que o Chocolatey seja instalado primeiro. Semelhante ao Homebrew no macOS - gerencia uma versão por vez.
winget install Schniz.fnm
fnm install --lts
fnm use --ltsFunciona no Windows, macOS e Linux. Troca rápida de versão.
# Baixe o instalador de https://volta.sh
volta install node@ltsBaixe o arquivo .msi de https://nodejs.org/en/download e execute-o. Instala o Node.js, npm e opcionalmente adiciona ao PATH. A opção mais simples, mas a mais difícil para gerenciar várias versões.
| Situação | Método Recomendado |
|---|---|
| Múltiplos projetos, versões diferentes do Node | nvm (macOS/Linux) ou nvm-windows |
| Quer a troca de versão mais rápida | fnm |
| Equipe precisa que todos usem a mesma versão | Volta |
| Apenas precisa do Node.js instalado rapidamente | Homebrew / winget / instalador oficial |
| Pipeline de CI/CD | Instalador oficial ou Docker node:22-alpine |
Após a instalação, abra um novo terminal e execute:
node --version
# v22.15.0 (ou versão LTS similar)
npm --version
# 10.9.2 (ou similar)
# Teste rápido - execute uma linha de comando
node -e "console.log('Node.js está funcionando!')"# Com nvm
nvm install --lts --reinstall-packages-from=current
nvm use --lts
# Com Homebrew
brew upgrade node
# Com fnm
fnm install --lts
fnm use --lts
# Com Volta
volta install node@ltsAo atualizar o Node.js, os pacotes npm instalados globalmente podem precisar ser reinstalados. A flag --reinstall-packages-from=current no nvm cuida disso automaticamente.
npm install -g falha com EACCES, mude para o nvm - ele instala no seu diretório home e evita completamente problemas de permissão. Nunca use sudo npm install -g..nvmrc não troca automaticamente. O nvm não troca automaticamente as versões do Node quando você dá cd para um diretório com .nvmrc por padrão. Adicione autoload à sua configuração de shell ou use fnm/Volta, que fazem isso nativamente.npm instala e gerencia pacotes. npx executa um binário de pacote - seja do seu node_modules/.bin local ou baixando-o temporariamente. Por exemplo, npx create-next-app executa o gerador create-next-app sem instalá-lo globalmente.node não for reconhecido após a instalação, verifique se o diretório de instalação foi adicionado ao PATH do seu sistema. Reinicie o terminal ou saia e entre novamente.node --version mostrar uma versão diferente no VS Code, reinicie o VS Code após instalar ou alternar versões.Sempre instale a versão LTS mais recente, a menos que um projeto especifique o contrário. As versões LTS recebem patches de segurança e correções de bugs por 30 meses, tornando-as a escolha segura para trabalho de produção e aprendizado.
Não. O npm é distribuído com o Node.js. Quando você instala o Node.js, o npm é incluído automaticamente. Você pode verificar com npm --version.
npm instala e gerencia pacotes. npx executa um binário de pacote - seja do seu node_modules/.bin local ou baixando-o temporariamente. Por exemplo, npx create-next-app executa o gerador create-next-app sem instalá-lo globalmente.
Ambos funcionam bem. nvm é o mais utilizado e documentado. fnm é mais rápido (escrito em Rust) e suporta troca automática ao usar cd nativamente. Se a velocidade é importante para você, use fnm. Se você quer o maior suporte da comunidade, use nvm.
Sim, se você usar um gerenciador de versões (nvm, fnm, Volta, nvm-windows). Eles instalam cada versão em seu próprio diretório e permitem que você alterne entre elas com um único comando. O instalador oficial gerencia apenas uma versão.
Um arquivo .nvmrc na raiz de um projeto contém a versão do Node.js que o projeto espera (por exemplo, 22). Quando você executa nvm use nesse diretório, o nvm lê o arquivo e alterna para essa versão. fnm e Volta suportam arquivos semelhantes e podem trocar automaticamente quando você entra no diretório.
Com nvm: nvm uninstall 20. Com Homebrew: brew uninstall node. Com o instalador oficial no macOS, você precisa remover manualmente os arquivos de /usr/local/. No Windows, use Adicionar/Remover Programas.
O instalador oficial do Node.js coloca arquivos em diretórios do sistema que exigem acesso de root. A solução é mudar para nvm ou fnm, que instalam em seu diretório home. Nunca use sudo npm install -g - isso cria arquivos pertencentes ao root que causam mais problemas de permissão.
Bun e Deno são runtimes JavaScript alternativos. Eles podem executar muitos scripts do Node.js, mas têm APIs e ecossistemas diferentes. Para desenvolvimento React e Next.js, Node.js continua sendo o runtime padrão. Você pode explorar Bun ou Deno para casos de uso específicos, mas comece com Node.js.
Verifique o campo engines em package.json (por exemplo, "engines": { "node": ">=20" }), procure por um arquivo .nvmrc ou .node-version, ou verifique o README do projeto. Se nenhum existir, use a versão LTS mais recente.
Revisado por Chris St. John·Última atualização: 10 de jul. de 2026
🤖 Read the SystemsArchitect.io Blog for over 100+ cloud architecture articles 🔥