What this book covers
Chapter 1, Installing Powerful Tools for Your Project, outlines the goal of this book and explains what modern tools you need to install in order to build React applications efficiently. It introduces each tool and provides step-by-step instructions on how to install each of them. Then, it creates a structure for the project that we'll be building in this book.
Chapter 2, Create Your First React Element, explains how to install React and introduces virtual DOM. Then, it explains what React Element is and how to create and render one with native JavaScript syntax. Finally, it introduces the JSX syntax and shows how to create React Elements using JSX.
Chapter 3, Create Your First React Component, introduces React components. It explains the difference between stateless and stateful React components and how to decide which one to use. Then, it guides you through the process of creating both kinds.
Chapter 4, Make Your React Components Reactive, explains how to solve a problem with React and walks you through the process of planning your React application. It creates a React component that encapsulates the entire React application that we build in this book. It explains the relationship between parent and child React components.
Chapter 5, Use Your React Components with Another Library, explores how to use third-party JavaScript libraries with your React components. It introduces React component's lifecycle, demonstrates how to use mounting methods, and creates new React components for our book's project.
Chapter 6, Update Your React Components, introduces React component lifecycle's updating methods. This covers how to use CSS styles in JavaScript. It explains how to validate and set the default component's properties.
Chapter 7, Build Complex React Components, focuses on building more complex React components. It explores the details of how to implement different React components and how to put them together into one coherent and fully functional React application.
Chapter 8, Test Your React Application with Jest, explains the idea of unit testing and how to write and run your unit tests with Jest. It also demonstrates how to test your React components. It discusses test suites, specs, expectations, and matchers.
Chapter 9, Supercharge Your React Architecture with Flux, discusses how to improve the architecture of our React application. It introduces the Flux architecture and explains the role of dispatcher, stores, and action creators.
Chapter 10, Prepare Your React Application for Painless Maintenance with Flux, explains how to decouple concerns in your React application with Flux. It refactors our React application to allow painless maintainability in the future.