Chapter 5. Flux and Redux
React, at it its core, is a user interface library. For an application of any sophistication, the user interface, or the view-layer, only constitutes about half of our concerns. What remains is what is often referred to as the data layer. This part of our application is responsible for fetching, persisting, and mutating data, and communicating mutations to the view layer for their display.
React itself, and, by proxy, React Native, has no opinions or prescriptions for handling data within an application. In theory, React could be used with any number of libraries or frameworks that provide a solution for data handling. In fact, when the library first came out, this was common. There were integrations with basically all of the major frameworks at the time (Backbone, Angular, Ember, and so on.) that used React in place of the framework's traditional view-layer.
As React became more popular, developers began looking for a data handling solution created...