I'm a Redux maintainer, and I can vouch for this.<p>It's a pretty neat project. I've seen literally dozens of JS immutable update utility libraries, and Immer is the best one I've seen in terms of API, simplicity, and being able to write "normal" code.<p>It's racked up over 3000 stars so far, and that seems well deserved. I finally had a chance to play with it myself for the first time this last week, and it seems to work as advertised.<p>I think it's a great solution to help simplify immutable state updates, especially in Redux reducers. In fact, I just published a small package that, among other things, uses Immer as part of a `createReducer()` lookup table utility ( <a href="https://www.npmjs.com/package/@acemarke/redux-starter-kit" rel="nofollow">https://www.npmjs.com/package/@acemarke/redux-starter-kit</a> ). We're hoping to eventually turn that into an official Redux "simple setup" package.