Monday, December 4, 2017

React Workshop Installation Notes (March 17, 18, & 24 2018)


Install Chrome

React is compatible with every modern browser, but Chrome is the best choice for development. In addition to its excellent developer tools,Chrome has two essential extensions: React Developer Tools and Redux DevTools. Install Chrome at:
Then install React Developer Tools and Redux DevTools via the Chrome Web Store.

Install Git

The latest version of Git is 2.16.2. If you have it already, but your version is older than 2.6, please update it. Git is free.

Installing Node.js

Node.js is a JavaScript runtime, that is a fancy phrase which merely means it lets us execute JavaScript code from the command line. I am installing the current LTS or long-term support version, which is version 8.10.0. I highly recommend that you do the same. Don't download the latest version; it sometimes has bugs and incompatibilities. Go to: Click the button to download the LTS version, when complete double-click the file to begin the installation.
Usually, the site detects your operating system and the webpage changes to reflect it. If you don't see your operating system, click the "OtherDownloads," which is in small text below the download button.
Installing Node should only take a few minutes. To verify, open a new command prompt, or terminal instance. From the command line type:
node --version
Node.js should respond with its version number. 

Install Atom/Nuclide

Atom is the free and hackable editor from the folks at GitHub. It is cross-platform and runs on Windows, Mac, and Linux. You are welcome touse whatever editor you like, but please know how to use it. I can give you help using Atom, but not much else. Download Atom
Once we have Atom installed and working, we can optionally install Nuclide. It is a package, which is an Atom add-on, from Facebook. It workswell other Facebook open-source projects, like React, React-Native, and Flow. Again, it is optional, but I will use it. Unfortunately, the Windowsversion is not complete. So while Nuclide has been thoroughly checked out on Mac and Linux, on Windows, it has not.
To install Nuclide:
Help >> Welcome Guide >> Install a Package >> Open Installer
Type "Nuclide" in the search bar.
"searching packages for nuclide"
After finding the package, verify that it is from Facebook, then click "Install."
It will take a bit of time for the package to download and install. Be patient.

Installing Yarn

Yarn is a package manager from Facebook. It is similar to npm but is faster and more secure. I highly recommend using Yarn over npmprimarily when working with React or React-Native. The easiest way to install Yarn is not safe, but it is via npm. It seems npm packages are notsigned which is a security risk when installing apps globally.
via npm
npm install -g yarn
via Homebrew on macOS
brew install yarn
Node.js is a prerequisite for Yarn, and brew installs it with Yarn. If you are using a tool like nvm, this can break it. You can install Yarn withoutNode.js with the following command:
brew install yarn --without-node
via Chocolatey on Windows
Chocolatey is a Windows, package manager. You can get Chocolatey from
You install Yarn with the following Chocolatey command:
choco install yarn
You can validate that Yarn was installed correctly by typing:
yarn --version
Yarn responds with its version information if installed correctly.


The create command is now part of Yarn. To create a new app, use:
yarn create react-app <app name>


Firebase is a cloud service which is now part of Google. Its initial function was their Firebase Real-Time Database, but now they offer many more services including hosting which we'll need to deploy our React app. So, if you don't already have an account, go to and sign up. Don't worry you won't need a credit card if you sign up for the Spark Plan.

Firebase CLI

To make maximum use of Firebase, we will need to download its command line tools or CLI. To install type:
yarn global add firebase-tools
To verify that the tools have been installed correctly install type:
firebase --version
It should respond with the version number.


Now we have all of our development tools installed and are ready to begin developing React applications.

Thursday, October 19, 2017

To maximize our time together for learning Node.js, please take care of the following before the workshop. The total time to install the software should be about 60 minutes. If you have questions, please contact me via email:

  1. Install a web development IDE
    1. For the workshop, I will be using JetBrains' WebStorm. If you are accustomed to a different IDE please feel free to use it. Keep in mind, that I won't know how to use your IDE. WebStorm is a paid application but has a free 30-day trial.
  2. Install Git
    1. We will be using git for the workshop. The latest version is 2.14.2. If have it already, but your version is older than 2.6, please update it.
    2. Git is free.
  3. Install Node.js
    1. We need node.js installed on our development machines. If you have a version earlier than 8.0.0, please upgrade. I will be using node version v8.6.0. The easiest way to upgrade Node.js is to install the version that you'd like to use. For advanced students using nvm, brew, or chocolatey, I am aware of these tools, but they each introduce more complexity.
  4. Upgrade npm
    1. NPM comes with node.js but the version installed is usually out of date with the current release. Please update it by entering the following command in the terminal:
    2. npm install npm -g
  5. mLab
    1. mLab is a fully managed MongoDB-as-a-service provider and a partner of Heroku. Will host our MongoDB service on it instead of installing Mongo on our machines. mLab gives us a free developers account tied to our Heroku account. You may need to supply a credit card but you will not be charged so long as you choose the free sandbox account. This is a small 500 MB database on a shared instance but it is more than enough for the class and gives you real world experience.
  6. Heroku
    1. We will deploy our finished app to Heroku, a cloud-based hosting platform. Developer accounts are free. Please sign up now. If you already have an account, please be sure to have at least one free application slot for the workshop.
  7. Heroku CLI
    1. We will also need to install Heroku's command line interface, or CLI. This will allow us make and manager Heroku apps from the command line.  
  8. MongoDB
    1. We will use MongoDB to hold our data, but we will not install the data locally. Instead we will access it remotely at mLab. We will still need to install the MongoDB CLI.
  9. Robomongo
    1. MongoDB includes the Mongo Shell, its REPL. Some people don't like using the REPL, so there is an alternative: Robomongo. I won't use it in class but if you hate the REPL you do have another choice.

Please take care of everything on the list before the workshop. We won't have time to do it during the workshop.

Thursday, August 24, 2017

React Native Installation Notes

Our goal is to complete a small React Native app by the end of the day. We will use Facebook's react-native-cli speed up our development. In this workshop, we will only build Android apps, but all of our code is iOS compatible.

Install Chrome
Debugging React Native can be challenging. The built-in developer tools allow us to debug remotely via Chrome; this is a huge time saver. Install Chrome at:

Install Git
The latest version of Git is 2.14.1. If have it already, but your version is older than 2.6, please update it. Git is free.

Install React Native
Facebook has written complete installation notes. Be sure to select "Building Project with Native Code," Android and your development OS.

Be sure to follow all of the installation notes including building a virtual device aka simulator. We will need a simulator to run our apps in the workshop.