+1 for @shopify/draggable alone... currently using a different one, and may be able to just slot this in with angular + redux, since what I've been using at work has been problematic to say the least.
For some reason I can't sign into medium on my browser... so here's my comment.
How do you disconnect dispatch from the store? I mean, if you're doing a server-side implementation, how do you dispatch, as an example a route change to bind up your data against the routing info? You will have more than one store in a server-side implementation.
Memory will be similar, but the start time of browser instances will be reduced. Chrome creates a separate management/runtime process for each tab/page.
It doesn't mutate, the immutable changes are abstracted via another library... however imho, it's no longer redux, but a prescriptive wrapper around it, and the usage is very alien compared to redux. Also, I'm much more inclined to use redux-thunks with async functions, which works very well, and is easier to comprehend than the wrappers for saga.
But even then, the error handling completely breaks thenable conventions, which is a second function passed to then. In the end, Promises/thenables have a convention and this breaks it without providing more value than callbacks, while creating a context object construct.