Introduction
React vs Angular and other Frameworks
Understanding React
JSX, Components and Props, the Component Life Cycle, etc.
Managing application state vs data state
Writing React Applications with ES6
Syntax and ES6+ features to watch out for
Setting up the Development Environment
Overview of Node.js
Installing and Configuring Node.js
Overview of Webpack and Babel
Understanding "transformation" (translating JSX into JavaScript)
Installing and Configuring Webpack
Installing and Configuring Babel
Installing React and ReactDOM
Writing Your First React Application
Configuring WebPack to Watch for Changes to Source Files
Configuring npm as a Tool Runner
Extending the React Application with New Components
Implement the Flux and Redux Architecture into a React Application
Understanding Flux and Redux
Stateless Components, Actions, Reducers, Dispatchers, Middleware, Containers, etc.
Building Multiple Views into the React Application
Installing and Configuring Redux
Creating a Simple To-do List with Flux/Redux (with mock server API)
Integrating a Backend with your React Application: GraphQL and Apollo
Overview of GraphQL
Data Types, Schemas, Graph Structure, and Integration with React
Limitations of Restful Routing
GraphQL vs SQL
Writing a GraphQL Query
Authenticating Users
Integrating React Router with GraphQL
Building a Simple Blog with React and GraphQL
Testing your React Application
Processing React Applications with npm Command-line Scripts
Troubleshooting
Structuring the App Repository
Best Practices for Writing React Code
Deploying Your React Application
A Word on Mobile Applications with React Native
Summary and Conclusion |