NVM – Gerencie múltiplas instalações do Node.js

Imagine a seguinte situação: você tem o Node.js instalado na sua máquina, versão 9.1, porém, deseja criar um novo projeto que necessita da versão 12.13.1, o problema é que você ainda está suportando o projeto que depende da versão mais antiga. O que você faz? Desinstala a versão atual e instala a requerida pelo novo projeto, tendo que repetir estes passos sempre que alternar entre projetos que dependem de versões diferentes do Node? Nossa, cansativo em. Tenho a solução para seus problemas, me acompanhe ao longo deste post, irei te apresentar o NVM, a solução para seus problemas.

O que é o NVM?

É um gerenciador de “instâncias” Node.js, ou seja, uma ferramenta que nos permite possuir múltiplas instalações do Node.js em nossa máquina. Parece uma ferramenta simples e sem muita utilidade, mas não se deixe engana, uma vez com NVM nunca mais sem ele!

Instalando no Linux e MacOS

O processo de instalação é bem simples, ele está vastamente documentado em: https://github.com/nvm-sh/nvm#installation-and-update

Abaixo estou transcrevendo de forma resumida os passos a serem seguidos. Recomendo que acesse o link indicado acima e considere as instruções curl ou wget contidas neste, uma vez que podem apontar para uma versão mais recente do software no momento em que você lê este post.

Para instalar, abra o terminal e execute os comandos baixo com privilégio elevado:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | $SHELL

Ou via wget:

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | $SHELL

A instrução acima irá descarregar um repositório no endereço ~/.nvm e fazer referência ao mesmo em um dos arquivos de profile do usuário corrente (~/.bash_profile~/.zshrc~/.profile~/.bashrc, etc.). Nas instruções acima considerei utilizar a variável de ambiente $SHELL uma vez que não posso prever qual shell você está utilizando.

Como saida da instrução executada teremos algo mais ou menos como:

Imagem 01: Output da execução do script de instalação do nvm

Em resumo, a imagem 01 mostra que o código:

export NVM_DIR=”$HOME/.nvm”
[ -s “$NVM_DIR/nvm.sh” ] && . “$NVM_DIR/nvm.sh” # This loads nvm
[ -s “$NVM_DIR/bash_completion” ] && . “$NVM_DIR/bash_completion” # This loads nvm bash_completion

foi adicionado ao arquivo de profile, neste caso “.bashrc”. Caso queira conferir se de fato o código acima foi adicionado ao arquivo de profile, basta executar:

cat ~/.bashrc

Agora vamos recarregar o arquivo de profile para podermos utilizar o NVM:

source ~/.bashrc

Pronto, agora é só curtir a ferramenta. Para verificar se está funcionando, execute:

nvm --version

A instrução acima irá exibir no terminal a versão da ferramenta atualmente instalada.

Instalando no Windows

1 – Acesse: https://github.com/coreybutler/nvm-windows/releases

2 – Você terá acesso a todas as versões do software, procure pela tag latest release, provavelmente será uma das versões contidas no top da lista. Pessoalmente recomendo que baixe o pacote nvm-setup.zip, porém, você é livre para utilizar qualquer uma das opções disponíveis:

3 – Caso tenha executado o passo 2 conforme minha orientação, extraia o arquivo e rode o executável, como este é um software que não requer configurações, basta avançar até o fim da instalação;

4 – Reinicie a máquina para que as variáveis de ambiente sejam recarregadas.

Utilizando o NVM

As instruções abaixo são genéricas para sistemas Windows, Linux e MacOS. Caso seu sistema operacional seja Windows, ao ler a palavra terminal, considere como sendo o prompt de comando (CMD).

1 – Abra o terminal e execute:

nvm install 12.13.1

O número em questão é a versão que desejamos baixar do Node.js, ou seja, poderia ser qualquer versão já publicada. Onde encontrei esse número de versão? No site oficial da ferramenta (https://nodejs.org).

2 – Agora que já instalamos a versão desejada, precisamos informar ao nvm que iremos trabalhar com ela, ou seja, utilizar-la. Execute:

nvm use 12.13.1

Agora o Node.js já pode ser utilizado normalmente.

3 – Como instalei somente a versão 12.13.1, informei ela. Para listar todas as versões já baixadas, execute:

nvm ls

4 – Para remover da sua máquina uma versão que foi instalada mas não está em uso no momento, execute:

nvm uninstall 12.13.1

Para ter acesso a lista de comandos, basta digitar nvm e pressionar ENTER.

Conclusão

A versão para Linux e MacOS possuem inúmeros recursos que ainda não são suportados pela ferramenta para Windows, porém, sem sombra de duvida, ainda sim você precisa do NVM, seja qual for seu sistema operacional!