Eric Greene - http://t4d.io - LinkedIn
Class:
- Monday - Wednesday: 9am to 5pm
Breaks:
- Morning: 10:25am to 10:35am
- Lunch: Noon to 1pm
- Afternoon #1: 2:15pm to 2:25pm
- Afternoon #2: 3:40pm to 3:50pm
JavaScript topics will be included as needed into the React & Redux content
- Day 1 - Overview of React, JSX, Props + Validation, State, Immutable Programming
- Day 2 - Component Composition, Forms, Special Attributes
- Day 3 - Pure Component, Stateless Functions, Life Cycle Functions, Unit Testing
- Accelebrate, Inc.
- Eric's Blog
- WintellectNOW - Special Offer Code: GREENE-2016
- Microsoft Virtual Academy
- React Blog Posts - Post 4 - React Unit Tests
- TopTal Videos
- React SitePoint
- Redux Videos
- You Don't Know JS
- JavaScript Air Podcast
- Speaking JavaScript
- TC39 Process - Feature Stages
- Official ES2016 Features
- Possible ES2017 Features
This project configuration bundles JavaScript files with Webpack transpiling ES2017 and JSX code to run in an ES5.1 environment.
Step 1. Install Node.js version 7 or higher. To install Node.js click here.
Step 2. Download this repository. Extract the zip file to a working folder on your system.
Step 3. Open a terminal window, change to the folder where you extracted the zip file. You should see a package.json file in the folder.
On Windows, the terminal is called "Node.js Command Prompt". This will command prompt will contain the proper paths for Node.js development. DO NOT RUN the Node.js program. Click the icon named "Node.js Command Prompt". For Mac users, the Mac terminal is all you need.
Step 4. From the terminal, run the following command:
npm i && npm start
It could take a few minutes for this command to complete. If you have connection issues due to a proxy server, please edit the .npmrc file per the instructions in those files. Then re-run the command above.
This setup has been completed successfully when you receive a message similar to this one:
[0] Hash: 22b8756ee9084e76420f
[0] Version: webpack 1.14.0
[0] Time: 3731ms
[0] Asset Size Chunks Chunk Names
[0] app.js 906 kB 0 [emitted] app
[0] app.js.map 1.08 MB 0 [emitted] app
[0] ../images/placeholder.txt 20 bytes [emitted]
[0] ../index.html 300 bytes [emitted]
[0] + 186 hidden modules
[1] [BS] File changed: dist/js/app.js
[1] [BS] File changed: dist/images/placeholder.txt
[1] [BS] File changed: dist/js/app.js.map
[1] [BS] File changed: dist/index.html
This terminal window is now running the web server, a second terminal window will need to be opened to run additional terminal commands.
Step 5. If a web browser did not open automatically for you, then open a web browser, and navigate to http://localhost:5000. The React web application should load and be usable.
Step 6. Open your favorite text editor (such as Atom or Visual Studio Code (preferred)), and modify the files in the src folder. When file changes are saved, webpack will automatically transpile and bundle the application code and assets, and deploy it to the dist folder. To see the changes, reload your web browser.
For Visual Studio Code:
- HTMLHint (kaufman.HTMLHint)
- ESLint (dbaeumer.vscode-eslint)
Visual Studio Code has built-in support for React and a Terminal, no package needs to be installed
For Atom:
- PlatformIO IDE Terminal (platformio-ide-terminal)
- Linter (linter)
- Linter-ESLint (linter-eslint)
- Linter-HTMLHint (linter-htmlhint)
- React (react)
From a terminal, in the root project folder (where the package.json file exists), the following commands can be executed to perform various project development tasks.
- npm start - removes the dist folder, builds and deploys the web app, and starts the web app and the rest app
- npm run clean - removes the dist folder
- npm run webpack:w - runs webpack in watch mode so web app file changes are automatically processed, and deployed to the dist folder
- npm run webpack - runs webpack once to process web app files, and deploys them to the dist folder
- npm run web - starts the web server
- npm run rest - starts the rest server