The Road to React teaches the fundamentals of React. You will build a real-world application in plain React without complicated tooling. Everything from project setup to deployment on a server will be explained for you. The book comes with additional referenced reading material and exercises with each chapter. After reading the book, you will be able to build your own applications in React. The material is kept up to date by myself and the community.

In the Road to React, I offer a foundation before you dive into the broader React ecosystem. The concepts will have less tooling and less external state management, but a lot of information about React. It explains general concepts, patterns, and best practices in a real world React application.

Essentially, you will learn to build your own React application from scratch, with features like pagination, client-side and server-side searching, and advanced interactions like sorting. I hope this book captures my enthusiasm for React and JavaScript, and that it helps you get started with it.

{{% package_box "The Road to React" "Build a Hacker News App along the way. No setup configuration. No tooling. No Redux. Plain React in 200+ pages of learning material. Pay what you want like 50.000+ readers." "Get the Book" "img/page/cover.png" "https://roadtoreact.com/" %}}

Book Changelog

I keep the learning material up to date to the recent changes in the React ecosystem.

10. January 2017:

even more beginner friendly

37% more content

30% improved content

13 improved and new chapters

140 pages of learning material

interactive course of the book on educative.io

08. March 2017:

20% more content

25% improved content

9 new chapters

170 pages of learning material

15. April 2017:

upgrade to React 15.5.

5. July 2017:

upgrade to node 8.1.3

upgrade to npm 5.0.4

upgrade to create-react-app 1.3.3

17. October 2017:

upgrade to node 8.3.0

upgrade to npm 5.5.1

upgrade to create-react-app 1.4.1

upgrade to React 16

15% more content

15% improved content

3 new chapters (Bindings, Event Handlers, Error Handling)

200+ pages of learning material

+9 Source Code Projects

17. February 2018:

upgrade to node 8.9.4

upgrade to npm 5.6.0

upgrade to create-react-app 1.5.1

more learning paths

extra reading material

1 new chapter (Axios instead of Fetch)

Amazon Print/E Book

31. August 2018:

professional proofreading and editing by Emmanuel Stalling

18 Source Code Projects

3. October 2018:

upgrade to node 10.11.0

upgrade to npm 6.4.1

upgrade to create-react-app 2.0.2

29. February 2020:

major rewrite with React Hooks

Table of Contents

Fundamentals of React Hello React Requirements Setting up a React Project Meet the React Component React JSX Lists in React Meet another React Component React Component Instantiation ReactDOM React Component Definition (Advanced) Handler Function in JSX React Props React State Callback Handlers in JSX Lifting State in React React Controlled Components Props Handling (Advanced) React Side-Effects React Custom Hooks (Advanced) React Fragments Reusable React Component React Component Composition Imperative React Inline Handler in JSX React Asynchronous Data React Conditional Rendering React Advanced State React Impossible States Data Fetching with React Data Re-Fetching in React Memoized Handler in React (Advanced) Explicit Data Fetching with React Third-Party Libraries in React Async/Await in React (Advanced) Forms in React

React's Legacy React Class Components React Class Components: State Imperative React

Styling in React CSS in React CSS Modules in React Styled Components in React SVGs in React

React Maintenance Performance in React (Advanced) TypeScript in React Unit Testing to Integration Testing React Project Structure

Real World React (Advanced) Sorting Reverse Sort Remember Last Searches Paginated Fetch

Deploying a React Application Build Process Deploy to Firebase



I look forward to extending this book with more React features. I hope "The Road to React" captures my enthusiasm for the topic, and that it becomes a valuable resource among other courses, tutorials, and books on pragmatic React programming. As always, feedback through any of the available platforms is welcome and encouraged!