DEV Community

Discussion on: Real-time app using React, Redux, Tailwind CSS & Firebase - Part 2

markerikson profile image
Mark Erikson

I have to say I really disagree with the choice to use vanilla Redux here. I agree that there's value in understanding how Redux works internally and what RTK's abstractions are doing for you, but seriously, we do not want people writing Redux code by hand in actual applications today!. That's why our core docs "Redux Essentials" tutorial shows how to get right into writing app code with RTK as the default approach.

mliakos profile image
Emmanouil Liakos • Edited

Redux code is just JavaScript code. Knowing the importance of immutability and how to achieve it using ES6 syntax, for example, is something that every JS developer must be aware of. Many people jump straight into libraries without ever taking the time to consider what they are doing for them.

The aim of this series is to take a closer look into how a React/Redux/Firebase implementation should be done and learn those best practices that RTK automatically applies for you, not how to build a production-ready, large-scale app. I never advocated not using RTK or anything like that.

Finally, other Flux libraries like Vuex, use the same underlying principles of constants, actions and reducers. I actually came from knowing how to setup a Vuex store, to setting up a Redux store in no-time because both Vuex and Redux share the same architectural principles (in Vuex you write everything by hand without the use of any toolkit). Consequently, IMHO knowing the fundamentals of Flux state management architecture is necessary before using any abstractions.

I might make a RTK version though 😊