If you want to learn React and Redux by example this is a book you would like. We are going to build several applications with an incremental level of complexity by going through the same steps. The unidirectional flow implies getting the initial state, showing it to the user using the view functions, listening for actions, updating the state based on those actions, and rendering the updated state back to the user again. In all application we will identify these The state - the data that is stored and can change. The views - functions transform the data into HTML. React makes it easier to create view functions that take input data and - return the visual representation of it using an XML-like syntax called JSX. Actions - plain data objects used to express user interaction. The updaters - functions transform the state. They receive the current state and an action and return the new state. The Redux library provides a functional approach for managing state using pure update functions. From simple to complex, we are going to The Counter app A Sidebar The Color Search app The Loan Calculator app The Toast Notification module The Weather Forecast app The Hacker News Client A Show More component The NYT Client A Fetch module "One of the best new Redux ebooks" - BookAuthority
Cristian Salcescu is the author of the "Functional JavaScript" and "Functional React" book series. He is a technical lead passionate about front-end development and enthusiastic about sharing ideas. He took different roles and participated in all parts of software creation. Cristian Salcescu is a JavaScript trainer and a writer on Medium.
I found this a nice introduction to React and Redux more helpful than a lot of the literature I’ve come across. It focuses a little more on the theory behind the process. I’m not a huge fan of tutorials which focus on copying across code to “get something done”, I like to know a little more about what the problems we’re trying to solve and how the technology helps solve those problems. This isn’t “in-depth” but it does act as a nice introduction to the thinking behind the packages used.