Installing node.js on OSX – macOS Sierra

Since I have decided to explore more the MEAN stack I have decided to create this tutorial for node.js beginners. node.js allows you to run javascript in the Terminal as appose to a regular browser which makes for a modern workflow in web development, with both node.js installed and a package manager called npm (Node Package Manager) also installed, which can manage other packages that work with node.js, one of the main ones being grunt.js for a web development workflow.




To install node.js on macOS Sierra  (or OSX 10.11, 10.10 and OSX 10.9)  you can download a pre-compiled binary package which makes a nice and easy installation. Head over to http://nodejs.org/ and click the install button to download the latest package. Either version is Ok, if you are new to it best to use the recommended version.

nodejs

Install the package from the .dmg by following along the install wizard which will install both node and npm, npm is Node Package Manager which allows for installs of additional packages for node.js.osx-nodejs-install

At the end of the install you are prompted to make sure that /usr/local/bin is in your path, double check you have it by running in the Terminal:

echo $PATH

After install check it was ok by entering in the command line node which will open a node javascript session:

node

> console.log('hello node');

hello node

undefined

>

 

To exit the node.js session just hit ‘control’ + ‘c’ twice.

If you have an earlier version of node you can just download the latest version and install to upgrade it and it will over write the previous version.

To check your version of node run …

node -v

Installing Packages for Node

There are many packages for Node such as the popular grunt.js,  you use the command npm to see a complete list run:

npm search

This will return an exhaustive list of available packages, to install a package run npm install

npm install easyimage

To list installed packages run

npm ls

To upgrade npm packages

npm update

To upgrade node.js itself on macOS just download and install the latest from nodejs.org

To sudo or not to sudo

It is cleaner not to use sudo when installing npm packages there are a couple of options here on how this is done.

sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

Also published on Medium.