O que é NVM? Guia Completo do Node Version Manager

Se você é desenvolvedor JavaScript ou trabalha com Node.js, provavelmente já se deparou com a necessidade de gerenciar diferentes versões do Node em seu ambiente de desenvolvimento. Nesse contexto entra o NVM (Node Version Manager). Neste artigo, vamos explorar o que é o NVM, suas vantagens, como instalá-lo e como utilizá-lo no dia a dia.
O que é o NVM?
O NVM é uma ferramenta de linha de comando que permite instalar, gerenciar e alternar entre múltiplas versões do Node.js em um único sistema. Com o NVM, você pode facilmente testar sua aplicação em diferentes versões do Node ou utilizar versões específicas para projetos distintos.
Por que usar o NVM?
Com a evolução constante do Node.js, novas versões são lançadas regularmente, trazendo novas funcionalidades e melhorias de desempenho. No entanto, nem todos os projetos são atualizados na mesma velocidade. Assim, alguns podem exigir versões mais antigas para garantir compatibilidade. O NVM resolve esse problema ao permitir que você:
- Instale múltiplas versões do Node.js sem conflitos.
- Alterne rapidamente entre versões conforme a necessidade.
- Teste aplicações em diferentes ambientes do Node.js.
Vantagens do NVM
- Flexibilidade: Gerencie facilmente várias versões do Node.js. Dessa forma, você evita conflitos entre projetos.
- Simplicidade: Comandos intuitivos para instalação e alternância de versões. Isso significa que até iniciantes podem utilizá-lo sem dificuldade.
- Isolamento: Evita conflitos entre projetos que requerem versões diferentes. Dessa forma, é possível manter diversos projetos com versões diferentes do node em um mesmo ambiente.
- Atualizações Facilitadas: Instale novas versões do Node.js assim que são lançadas.
Como instalar o NVM
A instalação do NVM varia conforme o sistema operacional. A seguir, abordaremos como instalá-lo em sistemas Unix (Linux e macOS) e Windows.
Instalação no Linux e macOS
- Abra o terminal.
- Execute o script de instalação com o comando cURL ou Wget:
Usando cURL:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash
Usando Wget:
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh | bash
Reinicie o terminal ou carregue o NVM com o comando:
source ~/.nvm/nvm.sh
Verifique a instalação:
nvm --version
Instalação no Windows
Para usuários do Windows, a recomendação é usar o nvm-windows:
- Baixe o instalador do repositório oficial: nvm-windows Releases
- Execute o instalador e siga as instruções.
- Verifique a instalação abrindo o Prompt de Comando ou PowerShell e digitando:
nvm version
Como usar o NVM
Com o NVM instalado, você pode começar a gerenciar as versões do Node.js.
Comandos Básicos
Listar versões disponíveis do Node.js:
Com o comando abaixo, é possível verificar todas as versões do node.js disponíveis para instalação, dessa forma, é possível checar se a versão que você precisa está disponível antes de tentar instala-la.
nvm ls-remote
Instalar uma versão específica:
O comando abaixo instala uma versão nova localmente no seu ambiente de desenvolvimento. Entretanto, ter a versão instalada, não significa que ela já será usada imediatamente, para isso é preciso usar um dos comandos abaixo.
nvm install v16.20.2
Listar versões instaladas no sistema:
Diferente do comando ls-remote
o nvm ls
lista apenas as versões que já estão instaladas no seu ambiente.
nvm ls
Usar uma versão específica do Node.js:
Esse comando é o que fará com que de fato a versão atual do node passe a ser a especificada. Essa versão será utilizada durante toda a sessão do terminal, ou até que seja trocada novamente. Ou seja, ao fechar e abrir o terminal novamente, o node volta para a versão padrão.
nvm use v16.20.2
Definir uma versão padrão:
Caso o objetivo seja mudar a versão do node de maneira definitiva, e mesmo que o terminal seja reiniciado a versão permaneça, é preciso atribuir o alias default
a versão com o comando abaixo.
nvm alias default v16.20.2
Exemplo de Uso
Imagine que você está trabalhando em dois projetos: um que requer o Node.js v14 e outro que utiliza o Node.js v16. Para resolver isso, você pode usar o NVM para alternar entre as versões.
- Instale as versões necessárias:
nvm install v14.21.3
nvm install v16.20.2
- Alterne para a versão v14 ao trabalhar no primeiro projeto:
nvm use v14.21.3
- Quando for trabalhar no segundo projeto, mude para a versão v16:
nvm use v16.20.2
Conclusão
O NVM é uma ferramenta indispensável para desenvolvedores que precisam gerenciar múltiplas versões do Node.js. Sua facilidade de uso e flexibilidade tornam o processo de desenvolvimento mais ágil e organizado. Portanto, se você ainda não utiliza o NVM, este é o momento ideal para incorporá-lo ao seu fluxo de trabalho.
Esperamos que este guia tenha esclarecido o que é o NVM e como ele pode beneficiar seu desenvolvimento com Node.js. Para mais dicas e tutoriais, continue acompanhando o Programai!

Bacharel em Ciência da Computação pela Universidade Federal do Amazonas, MBA em Gerenciamento de Projetos pela Fundação Getúlio Vargas.
Atualmente trabalha como Gerente de Engenharia na Meliuz.
Com 20 anos de experiência na área, já trabalhou com um pouco de tudo, C, C++, Java, C#, Delphi, Node.js, AWS, PHP, Python, React, Angular, jQuery, e mais um monte de coisa que nem existe mais 😀