React
Layers in a React App
Split a React payment screen into view, model, and data, following Juntao Qiu. Running the example repo shows a useMemo bypass and a fetch loop.
overlay-kit
Swapping a global isOpen flag for one await: what I gained, what I lost, and how overlay-kit's events, reducer, and openAsync core really work.
Kalyx
Why I built Kalyx, a headless React DatePicker, and how it differs from Ark UI, React Aria and react-day-picker: UTC ISO values, Intl DST, timezone tests.
State Management
A framework for frontend state management across seven categories (local, global, server, form, URL, external, guards) with React modeling criteria.
Reflections on Refactoring the Second Toss Frontend Fundamentals Mock Exam
Refactoring the meeting room reservation app from the second Toss Frontend Fundamentals mock exam: component decomposition and domain logic extraction.
queryKey
How TanStack Query queryKey management evolved from inline arrays and constants to key factories and v5 queryOptions, with DataTag and invalidation.
How queryKey Comparison Works
How TanStack Query judges new queryKey arrays equal: hashKey serialization (key order, undefined, Map, cycles) and how filters compare key structure.
Placing ErrorBoundary
How many ErrorBoundaries to use and where, checked in source: what route, screen, and region each receive, one shared fallback, and retry conditions.
Why the Retry Button Does Nothing
Three cases where retry in a react-error-boundary fallback brings back the same fallback, checked in installed source, and how to clear each one.
Error Propagation
Throw the same error from seven places and only four reach an ErrorBoundary. This post traces where each kind actually propagates.
Mastering React Fiber
A source-based look at React Fiber: Stack Reconciler, Fiber nodes, double buffering, Lanes, the Work Loop, render and commit, and Concurrent Features.
Why React Uses MessageChannel
Why React's Scheduler uses MessageChannel over requestIdleCallback, rAF, or setTimeout, traced through React PRs and Chrome measurements of the 4 ms clamp.
Zustand, What Makes You ProviderLess?
A source-code analysis of how Zustand manages state without a Provider, including how its module-scoped design differs from the React Context API.