How To Install NVM – Node Version Manager

Node Version Manager, often shortened to nvm, is a tool for developers who work with multiple versions of Node.js on a single machine. In this article, you will learn how to install NVM, or Node Version Manager, on Windows, Linux, and Mac.

ALSO READ: Essential Apps to Install on your Windows PC or Mac

What Is Node Version Manager?

Node Version Manager (NVM) is a powerful tool designed to manage multiple Node.js versions on your device seamlessly.

Each project you work on may require a specific Node.js version. Relying solely on the version installed via npm can lead to compatibility issues. For instance, using Node.js 10.0.0 for a project expecting version 12.0.0 might result in errors. Similarly, updating Node.js to version 12.0.0 via npm could cause problems for a project built on version 10.0.0, triggering warnings like:

“This project requires Node version X.”

Instead of juggling Node.js installations with npm, NVM simplifies version control by enabling you to install and manage multiple Node.js versions effortlessly. With NVM, you can easily switch between versions based on the requirements of each project directly from the command line.

To ensure a smooth installation process, consider uninstalling any existing Node.js installations to avoid conflicts with NVM. Below, I’ll guide you through installing NVM on Windows, Linux, or Mac devices.

How To Install Node Version Manager?

While NVM is primarily supported on Linux and Mac systems, Windows users can enjoy a similar experience using a tool called nvm-windows, created by coreybutler. This utility offers the functionality of NVM tailored for Windows environments.

nvm-windows simplifies the management of Node.js versions on Windows machines. Here’s a step-by-step guide on how to install it:

Installing NVM on Linux and Mac

Step1: Run the nvm Installer

In your terminal, execute the following command using either curl or wget, depending on the availability of the command on your device:

curl -o- | bash


wget -qO- | bash

These commands will clone the nvm repository to a ~/.nvm directory on your device.

Step 2: Update your Profile Configuration

The installation process should automatically add the nvm configuration to your profile. If not, you can manually add it to your profile file (~/.bashrc, ~/.bash_profile, ~/.zshrc, etc.). Add the following lines to your profile file:

export NVM_DIR=”$([ -z “${XDG_CONFIG_HOME-}” ] && printf %s “${HOME}/.nvm” || printf %s “${XDG_CONFIG_HOME}/nvm”)”
[ -s “$NVM_DIR/” ] && \. “$NVM_DIR/”

These lines ensure that nvm is loaded for use.

Step 3: Reload the Shell Configuration

After updating your profile configuration, reload the configuration for your terminal by running:

source ~/.bashrc

This command ensures that nvm is ready for use.

Step 5: Verify Installation

Confirm that nvm is installed correctly by typing nvm -v in your terminal. This command should display the version of nvm that is installed.


Here are some frequently asked questions (FAQs) about installing NVM (Node Version Manager) on Linux and Mac:

What is NVM?

NVM (Node Version Manager) is a tool that allows you to manage multiple Node.js versions on your system. It enables you to easily switch between different Node.js versions depending on your project requirements.

Why should I use NVM?

Using NVM allows you to work on projects that require different versions of Node.js without conflicts. It provides flexibility and ease of management, ensuring compatibility with various projects.

How do I install NVM on Linux and Mac?

To install NVM on Linux and Mac, you can use the installation script provided by the NVM project. Simply run the installation command in your terminal, update your profile configuration, reload the shell configuration, and verify the installation by checking the NVM version.

What is the purpose of updating the profile configuration?

Updating the profile configuration is necessary to ensure that NVM is loaded automatically whenever you open a new terminal session. It sets up the necessary environment variables and configurations for NVM to work correctly.

Do I need to reload the shell configuration every time?

After updating the profile configuration, you only need to reload the shell configuration once to apply the changes to the current terminal session. However, if you open a new terminal session in the future, NVM will be loaded automatically due to the updated profile configuration.

Can I uninstall NVM if needed?

Yes, you can uninstall NVM by removing the installation directory (~/.nvm) and removing the lines related to NVM from your profile configuration file. Additionally, you can delete any aliases or symbolic links created by NVM.


In conclusion, installing NVM (Node Version Manager) on Linux and Mac systems provides a convenient solution for managing multiple Node.js versions seamlessly. By following the installation steps outlined earlier, you can ensure compatibility with various projects that require different Node.js versions without encountering conflicts.

NVM offers flexibility and ease of management, allowing you to switch between Node.js versions effortlessly depending on your project requirements. Updating the profile configuration ensures that NVM is loaded automatically whenever you open a new terminal session, simplifying the development process.

If you ever need to uninstall NVM, the process is straightforward, involving the removal of the installation directory and related configurations from your profile files.

NVM is a valuable tool for developers working with Node.js, enabling efficient version management and ensuring smooth project execution.

Image Courtesy: freecodecamp

Leave a Comment