Monday, December 4, 2017

React Workshop Installation Notes (9 + 10 December 2017)

Our goal is to deploy a React app to Heroku by the end of Sunday. We will use Facebook's create-react-app tool to create the skeleton of our app. It should only take about 30 minutes to install everything below.

Install a web development IDE
For the workshop, I will be doing everything in WebStorm. You can use any IDE you are comfortable using for web development. WebStorm is a paid application, but it has a 30-day free trial version available.
https://www.jetbrains.com/webstorm/download/

There are other excellent IDEs available, most are free, including Atom, Bracket, and VS Code. Whichever editor you choose, please be sure you know how to use it.

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 awesome extensions: React Developer Tools and 
Redux DevTools. Install Chrome at:
https://www.google.com/chrome/browser/desktop/index.html

Then install React Developer Tools and Redux DevTools via the Chrome Web Store.

Install Git
The latest version of Git is 2.14.1. If you have it already, but your version is older than 2.6, please update it. Git is free.
http://git-scm.com/downloads

Install Node.js
We need node.js installed on our development machines. If you have a version older than 6.9.4, please upgrade. I will be using node version 8.6.0. I would advise not to use the latest version which is 9.2.0 unless you know what you are doing. 
https://nodejs.org/en/download/

Upgrade npm
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:
npm install npm -g

Create React App
Facebook has an excellent tool for beginner React developers, create-react-app. It is a CLI which creates a complete React skeleton app. Install it with npm:
npm i -g create-react-app

Heroku
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.
https://www.heroku.com/home

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: rockncoder@gmail.com.


  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:
https://www.google.com/chrome/browser/desktop/index.html

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.
http://git-scm.com/downloads

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

https://facebook.github.io/react-native/docs/getting-started.html

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.