Skip to main content

Learning Resources

The Redux docs are intended to teach the basic concepts of Redux, as well as explain key concepts for use in real-world applications. However, the docs can't cover everything. Happily, there are many other great resources available for learning Redux. We encourage you to check them out. Many of them cover topics that are beyond the scope of the docs, or describe the same topics in other ways that may work better for your learning style.

This page includes our recommendations for some of the best external resources available to learn Redux. For an additional extensive list of tutorials, articles, and other resources on React, Redux, Javascript, and related topics, see the React/Redux Links list.

Basic Introductions#

Tutorials that teach the basic concepts of Redux and how to use it

Using Redux With React#

Explanations of the React-Redux bindings library

Project-Based Tutorials#

Tutorials that teach Redux concepts by building projects, including larger "real-world"-type applications

  • Practical Redux
    https://blog.isquaredsoftware.com/2016/10/practical-redux-part-0-introduction/
    https://blog.isquaredsoftware.com/series/practical-redux/
    An ongoing series of posts intended to demonstrate a number of specific Redux techniques by building a sample application, based on the MekHQ application for managing Battletech campaigns. Written by Redux co-maintainer Mark Erikson. Covers topics like managing relational data, connecting multiple components and lists, complex reducer logic for features, handling forms, showing modal dialogs, and much more. (Note: this is an older series, and today we recommend newer patterns for writing Redux code. However, many of the principles in this series are still valuable.)

Redux Implementation#

Explanations of how Redux works internally, by writing miniature reimplementations

Reducers#

Articles discussing ways to write reducer functions

Selectors#

Explanations of how and why to use selector functions to read values from state

Normalization#

How to structure the Redux store like a database for best performance

Middleware#

Explanations and examples of how middleware work and how to write them

Side Effects - Basics#

Introductions to handling async behavior in Redux

Side Effects - Advanced#

Advanced tools and techniques for managing async behavior

Thinking in Redux#

Deeper looks at how Redux is meant to be used, and why it works the way it does

Redux Architecture#

Patterns and practices for structuring larger Redux applications

Apps and Examples#

Redux Docs Translations#

Books#

  • Redux in Action
    https://www.manning.com/books/redux-in-action
    A comprehensive book that covers many key aspects of using Redux, including the basics of reducers and actions and use with React, complex middlewares and side effects, application structure, performance, testing, and much more. Does a great job of explaining the pros, cons, and tradeoffs of many approaches to using Redux. Personally recommended by Redux co-maintainer Mark Erikson.

  • The Complete Redux Book
    https://leanpub.com/redux-book
    How do I manage a large state in production? Why do I need store enhancers? What is the best way to handle form validations? Get the answers to all these questions and many more using simple terms and sample code. Learn everything you need to use Redux to build complex and production-ready web applications. (Note: now permanently free!)

  • Taming the State in React
    https://www.robinwieruch.de/learn-react-redux-mobx-state-management/
    If you have learned React with the previous book of the author called The Road to learn React, Taming the State in React will be the perfect blend to learn about basic and advanced state management in React. You will start out with learning only Redux without React. Afterward, the book shows you how to connect Redux to your React application. The advanced chapters will teach you about normalization, naming, selectors and asynchronous actions. In the end, you will set up and build a real world application with React and Redux.

Courses#

  • Modern React with Redux, by Stephen Grider (paid)
    https://www.udemy.com/react-redux/
    Master the fundamentals of React and Redux with this tutorial as you develop apps with React Router, Webpack, and ES6. This course will get you up and running quickly, and teach you the core knowledge you need to deeply understand and build React components and structure applications with Redux.

  • Redux, by Tyler McGinnis (paid)
    https://tylermcginnis.com/courses/redux/
    When learning Redux, you need to learn it in the context of an app big enough to see the benefits. That's why this course is huge. A better name might be "Real World Redux". If you're sick of "todo list" Redux tutorials, you've come to the right place. In this course we'll talk all about what makes Redux special for managing state in your application. We'll build an actual "real world" application so you can see how Redux handles edge cases like optimistic updates and error handling. We'll also cover many other technologies that work well with Redux, Firebase, and CSS Modules.

  • Learn Redux, by Wes Bos (free)
    https://learnredux.com/
    A video course that walks through building 'Reduxstagram' — a simple photo app that will simplify the core ideas behind Redux, React Router and React.js

More Resources#

  • React-Redux Links is a curated list of high-quality articles, tutorials, and related content for React, Redux, ES6, and more.
  • Redux Ecosystem Links is a categorized collection of Redux-related libraries, addons, and utilities.
  • Awesome Redux is an extensive list of Redux-related repositories.
  • DEV Community is a place to share Redux projects, articles and tutorials as well as start discussions and ask for feedback on Redux-related topics. Developers of all skill-levels are welcome to take part.