Undo Redux? How Boris Cherny’s Undux Redefined State Management
The article revisits Undux, the minimalist state‑management library created by Anthropic’s Claude Code founder Boris Cherny out of frustration with Redux, examines its type‑safe, no‑boilerplate API, compares code snippets with Redux’s workflow, and reflects on its legacy and lessons for modern React development.
Undux Overview
Undux is a minimalist state‑management library created to avoid Redux boilerplate. Its core principles are type safety and no boilerplate.
Comparison with Redux
In Redux updating a value typically requires defining an action type, an action creator, a reducer case, and dispatching the action. Undux replaces that workflow with a direct get/set call:
// only simple get and set
store.set('count')(store.get('count') + 1)Store creation
import { createConnectedStore } from 'undux'
export default createConnectedStore({
counter: 0,
todoList: []
})Component usage (hooks)
function MyComponent() {
const store = useStore()
return (
<>
<div>Current count: {store.get('counter')}</div>
<button onClick={() => store.set('counter')(store.get('counter') + 1)}>
+1
</button>
</>
)
}Type safety
Undux is written in TypeScript; a typo such as store.get('counte') triggers a compile‑time error, preventing a string from being assigned to the numeric counter field.
Adoption at Facebook
After joining Facebook, the author gave dozens of internal talks; Undux quickly became one of the most used state‑management tools inside the company until later features like Recoil, the Context API, and React Hooks reduced its relevance.
Why the repository is archived
The GitHub repository https://github.com/bcherny/undux is archived; the last commit was three years ago. Contributing factors:
React Hooks simplify state reuse.
Libraries such as Zustand and Jotai adopt a similar minimalist philosophy with larger ecosystems.
Redux Toolkit removes most boilerplate from Redux.
Undux served as a transitional solution demonstrating that state management need not be complex.
Practical guidance
Because the library is unmaintained and the ecosystem has moved on, it is not recommended for new projects in 2026.
Reference: GitHub – bcherny/undux
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
