Most of the coding work we do in weeks 3 to 5 will be driven by the back-end web development framework Express. We'll install Express individually in each project we create. For now, we'll install the other tools we'll use along with Express.
- Install Node.js, a platform for back-end web development with the JavaScript programming language.
- Install MongoDB, the database we'll use with our Node.js and Express stack.
Note: when copying the code snippets, please exclude the $
as you paste and run the code into your terminal. The dollar sign $
is simply an indicator of the logged-in user's terminal prompt in the examples.
- Install Node.js with Homebrew by running the following command in the Terminal:
$ brew install node
-
Run the Terminal command
which node
to check that Node.js was installed. You should see a file path. The Terminal commandnode
changes your Terminal into a Javascript REPL ("Read Evaluate Print Loop"), like the right-hand side of repl.it. Typectrl + c
twice to quit out of the REPL and return to the normal Terminal commands. -
Run the Terminal command
which npm
to check that NPM is installed. The Node Package Manager, used through variousnpm
commands, is a lot like Homebrew, except we'll use it for Node.js-specific tools instead of for general Mac tools. NPM packages are often called "node modules."
Nodemon (short for "node monitor") will make our Node.js workflow more efficient.
- Install nodemon globally with the following Terminal command:
$ npm install -g nodemon
MonogDB is a database that stores information as easy to read "documents". We'll use it to store data in our Node.js and Express stack.
- Use Homebrew to update all our brew packages.
$ brew update
- Run
brew install
for MongoDB.
$ brew install mongodb
- Then we'll need a directory for MongoDB to save data.
$ sudo mkdir -p /data/db
You will be prompted to enter your system password here. This is the password you use to log into your computer.
Sidenote:
When you use this sudo
command, you are saying "superuser do" which can force your computer to perform the command you entered, even if it's a bad idea. This is why you're prompted to insert a password. Terminal makes sure your computer is secure and that you're sure about the command you're about to execute forcefully.
- Finally we'll want to make sure we have permission to read and write to this directory.
$ sudo chown -R $USER /data/db
Again, you'll need to enter your system password.
- Run two commands to check whether the install worked. You should see a file path after each command.
$ which mongod
$ which mongo
If this has worked correctly, you will see /usr/local/bin/mongod
and /usr/local/bin/mongo
respectively as the outputs from terminal.
RoboMongo is a GUI (Graphical User Interface) tool to let us see the data in our Mongo databases. Let's install that now.
- Go to https://robomongo.org/download and download the free (community) edition.
- Install it!
- Setup your Node.js environment
- Setup your Ruby environment
- Install Development Tools