Redux has been tied with React projects for many years now. I even see job postings for React, that require Redux experience and knowledge like the one shown below:
The job posting requires significant experience using React.js / Redux. Well they are not the same, and why would someone need significant experience with Redux to get this job! I don’t get it, but that’s not in the scope of this blog post!
The point is that the industry is treating Redux as if it is synonymous with React, and you need to know Redux to code React applications. This is absolutely not true.
So let’s step back and revisit what Redux is and what problems it solves.
What problem does Redux solve?
Libraries like Redux were used to relieve this specific pain point.
The react-redux is a state management library, that is extremely popular. It provides an external storage to store your entire application’s state.
What is state?
State is data that can change.
React components read data from this store, dispatch actions to the store and can also update the store.
The Redux store is the source of truth that contains the entire application’s current state.
Redux solved state management concerns in large React applications. But often teams have used Redux before they needed it. This causes applications to be bloated.
Do you still need Redux?
Now fast forward several years, the React ecosystem has grown so much, and the question arises, do we still need Redux? The answer for most cases is: No!