Redux is a web application development architecture often used with React. In Redux, the entire state of your application is kept in a single store that can only be changed by special action objects that are specified by reducers. This course is a complete introduction to Redux and Flux, covering and comparing the new paradigms and teaching you how to create React web applications with Redux and Flux from the ground up. You’ll begin by exploring the basics of React to get a sense of how rendering, state management, and data flow work. You will then pull state management out of components as you create your own version of FLUX. Once finished, you’ll scrap the implementation in favor of Redux, and start adding functionality to browse data from an API. Finally, we’ll come back to our roots and explore some React-only solutions for state management, learning how to do things that we might normally tend to rely on FLUX and Redux to accomplish.