Optimistic UI in React 19: useOptimistic After Six Months in Production
useOptimistic in React 19 is the first optimistic UI API I actually shipped. Six months of production lessons: where it fits, where it doesn't, what…
useOptimistic in React 19 is the first optimistic UI API I actually shipped. Six months of production lessons: where it fits, where it doesn't, what…
I spent a Sunday turning on the React Compiler in a real Next.js app. Here's what I deleted, what bit me, and the eslint rule…
I avoided React Suspense for two years and was wrong. Six months in, here are the patterns that actually saved me, and where I still…
What I actually figured out about Next.js Partial Prerendering after six months in production. The patterns where it earned its place, and where I avoided…
Six weeks with useActionState in React 19: where it kills useReducer, the error-handling pattern I use, and when I still reach for the old way.
I replaced Redux Toolkit with Zustand on two React apps and stopped on a third. Here are the patterns I actually use and when Redux…
Six years of React, written from the bruises. When each hook actually earns its keep, and the times I reached for one and made things…
I rewrote our admin panel in htmx and kept our dashboard in React. Here's how the two compare in 2026, with code, gotchas, and when…
Six Next.js server actions mistakes I shipped to production: trusting the client, missing revalidatePath, throwing errors wrong. With code fixes for each.
Six months after React 19 went stable, here are the features I actually use day to day, the ones I forget exist, and the ones…