How to install Node.JS

“Isn’t it just simply googling ‘how to install Node'” you asked? Yes it isn’t.

  • The default Node installer will require administrator privilege
  • The node process will require admin privilege also if installed that way (which is a bad idea: every time you need to update node you must sudo)
  • You can’t easily switch node version if you work with multiple projects

Introducing nvm (node version manager), a script that installs node in your local user directory, requiring no sudo while compromising none of the quality

How to use it? According to Zoltan:

On Mac

The best way to install Node.js on Mac is nvm.

You have to have on your Mac the Command Line Tools. Or you install the full XCode from App Store either just use the small Command Line Tools installer:

$ xcode-select --install

(If you’ve just installed XCode, don’t forget to launch it first and accepting the Terms and Conditions.)

You can use the install script for nvm installation.

$ curl -o- | bash

However, I would encourage you to use the manual installation process. Nothing special there. Firstly, you just clone the whole repo in a subfolder in your home directory. (~/.nvm) Secondly, you add two extra lines to your console script.

Please follow these steps on NVM Readme:

You have to relaunch your Terminals. Maybe you have to log out and log back to activate the new settings.

List your installed node versions:

$ nvm list

List the available node versions in the cloud:

$ nvm ls-remote

You can use the combination of this two commands to see only the last 9 lines from the huge list of versions: $ nvm ls-remote | tail -n9

It is safe if you choose one of the most recent LTS (long time support) version and install it with the following command:

$ nvm install 10.3.0

Setup this version as the default.

$ nvm use 10.3.0
$ nvm alias default 10.3.0

Check your node version with

$ node -v

You should see v10.3.0 if you installed the above version.

You can update your npm to the latest.

$ npm install -g npm

After the update, the npm version, npm -v, should be at least 6.1.0 or above.

A little extra tip. Remember for the following command because it simplifies the update process. 😉

Let’s say, you would like to stay on the stable, LTS version and you would like to keep all the global package what you’ve already installed. Here is the solution:

$ nvm install 8 --reinstall-packages-from=8 --latest-npm

It updates your Node.js version to the latest version 8 and install the latest npm, plus it setup all your previously installed global packages.

Alternatives for installing Node.js, but not suggested:

On Linux

Please avoid to install Node.js with apt-get on Ubuntu. If you already installed Node.js with the built in package manager, please remove that. (sudo apt-get purge nodejs && sudo apt-get autoremove && sudo apt-get autoclean)

The installation process on Linux is the same as on OSX.

With the provided script:

$ curl -o- | bash

(Please read the instructions under OSX section.)

$ nvm list
$ nvm ls-remote
$ nvm install 10.3.0
$ nvm use 10.3.0
$ nvm alias default 10.3.0
$ node -v
$ npm install -g npm
$ npm -v

One more thing! Don’t forget to run the following command, which increases the amount of inotify watches.

$ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

On Windows

On Windows, if you don’t need more version from Node.js, you can use the official installer.

Install also Git for Windows.

Additionally, don’t forget to read this instruction, which is very interesting not just for Ember developers, but for everybody who uses Node.js on Windows.

Plus install and run ember-cli-windows

$ npm install -g ember-cli-windows
$ ember-cli-windows

More here:

Always run your PowerShell or CMD.exe as Administrator.

Don’t forget to run these two commands in PowerShell (as Administrator):

$ Set-ExecutionPolicy Unrestricted -scope Process
$ ember-cli-windows

Log out and log back in Windows.

Try to upgrade npm and after install the latest ember-cli

$ npm install -g npm
$ npm install -g ember-cli

I would suggest, experiment with different shells. Which worked better for you? PowerShell, Git Shell, the original CMD.exe? Please, share your Windows experiment in a comment.

Leave a Reply

Your email address will not be published. Required fields are marked *