Next.js Server Actions: When I Stopped Writing API Routes
How I stopped writing Next.js API routes for mutations, what Server Actions actually replaced, the bugs they caused me, and where I still keep API…
How I stopped writing Next.js API routes for mutations, what Server Actions actually replaced, the bugs they caused me, and where I still keep API…
I upgraded to Tailwind v4 out of boredom and got a faster dev loop I didn't expect. Here's what the Rust-based Oxide engine actually changed,…
Next.js 15 flipped App Router caching from opt-out to opt-in. What changed for fetch and GET route handlers, why it is safer, and how I…
PHP 8.4 property hooks and asymmetric visibility, with before-and-after code. The getter and setter boilerplate I deleted, and where these features bite back.
Tailwind CSS v4 moves config into CSS, auto-detects content, and bakes in container queries. Before-and-after code on what changed and what it costs you.
React 19 forms, useActionState, and useOptimistic with before-and-after code. The features I actually kept after upgrading, and the one I'm still careful with.
Six Next.js server actions mistakes I shipped to production: trusting the client, missing revalidatePath, throwing errors wrong. With code fixes for each.