Sobre o projeto

# Gerenciador de Versões do Node (nvm) Um gerenciador de versões para o [Node.js](https://nodejs.org/en/) projetado para ser instalado por usuário e executado por shell. O `nvm` funciona em qualquer shell compatível com POSIX (sh, dash, ksh, zsh, bash) em sistemas Unix, macOS e Windows WSL. ## O Que Ele Faz O nvm permite que você instale e alterne rapidamente entre diferentes versões do Node.js via linha de comando. Ele baixa binários pré-compilados quando disponíveis, ou compila a partir do código fonte se não houver binário para sua plataforma. ## Instalação O método recomendado é executar o script de instalação: ```sh curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.7/install.sh | bash ``` Alternativamente, clone o repositório para `~/.nvm` e carregue o `nvm.sh` a partir do perfil do seu shell. ## Comandos Principais - `nvm install <versão>` — Baixe e instale uma versão específica do Node.js (ex: `nvm install 22`, `nvm install node` para a versão mais recente) - `nvm use <versão>` — Altere a versão ativa do Node.js no shell atual - `nvm ls` / `nvm ls-remote` — Liste versões instaladas / disponíveis - `nvm alias default <versão>` — Defina uma versão padrão para novos shells - `nvm exec <versão> <comando>` — Execute um comando com uma versão específica do Node.js sem alternar a versão ativa - `nvm which <versão>` — Obtenha o caminho para o executável do Node instalado - `nvm reinstall-packages --reinstall-packages-from=<origem>` — Migre pacotes globais do npm entre versões ## Suporte a LTS O nvm reconhece as linhas de suporte de longo prazo do Node.js: - `lts/*` — versão LTS mais recente - `lts/argon`, `lts/hydrogen`, etc. — codinome LTS específico Uso: `nvm install lts/*` ou `nvm use 'lts/argon'` ## Integração com .nvmrc Arquivos `.nvmrc` na raiz do projeto declaram a versão desejada do Node.js. O nvm pode ativá-la automaticamente por meio de hooks de integração com shell no bash, zsh ou wrappers compatíveis com fish. ## Uso no Docker O nvm pode ser instalado em contêineres Docker ao carregar o `nvm.sh` por meio da variável `BASH_ENV`, permitindo uso tanto interativo quanto não interativo (ex: pipelines de CI/CD). ## Limitações - Não é oficialmente compatível com o shell Fish (existem alternativas da comunidade) - O FreeBSD não possui binários pré-compilados oficiais; a compilação pode exigir patches - A instalação via Homebrew não é suportada; os usuários devem desinstalar a versão atual e seguir as instruções oficiais - Em Macs com Apple Silicon, use o Node v16.0.0 ou superior para suporte nativo a binários arm64