What are the downsides of Redux compared to Flux?

Instead of saying downsides we can say that there are few compromises of using Redux over Flux. Those are as follows:

  1. We will need to learn to avoid mutations: Flux is un-opinionated about mutating data, but Redux doesn’t like mutations and many packages complementary to Redux assume we never mutate the state. We can enforce this with dev-only packages like redux-immutable-state-invariant , Immutable.js, or instructing our team to write non-mutating code.
  2. We’re going to have to carefully pick our packages: While Flux explicitly doesn’t try to solve problems such as undo/redo, persistence, or forms, Redux has extension points such as middleware and store enhancers, and it has spawned a rich ecosystem.
  3. There is no nice Flow integration yet: Flux currently lets us do very impressive static type checks which Redux doesn’t support yet.