I didn't “get” Redux, so I rewrote it, and this is what I learned
medium.com
medium.com
Javascript in browser is a single threaded environment. Immutability of data is a great concept in a context of concurrency but is an anti-pattern in browser code.
Create a global variable to store your entire global state of your application. g = {};
Use an observer pattern and create an event bus for all application entities to talk to each other. You get a simple alternative to Redux pattern.
Redux is a cool name though. Like an intern who works here said, its great to have on your resume but he does not know why its useful or what problem it solves.