Astro Islands: The Partial Hydration Setup That Killed My React Bundle
I moved my marketing site from Next.js to Astro islands and cut the JavaScript bundle by 91%. Here's the partial hydration setup I actually ship…
I moved my marketing site from Next.js to Astro islands and cut the JavaScript bundle by 91%. Here's the partial hydration setup I actually ship…
A year of shipping PHP 8.4 property hooks in production: what actually replaced my old methods, where they made things worse, and the gotcha I…
I moved a Next.js app from Tailwind v3 to v4 on a Sunday. Here's what the @theme block, the Oxide engine, and the one migration…
When to pick Server-Sent Events over WebSockets in 2026: a shipping engineer's take on real-time channels for dashboards, LLM streams, and more.
I stopped rotating Go web frameworks and picked one. Here's when I reach for Chi, Gin, Fiber, Echo, and plain net/http on production Go services…
CSS Subgrid finally solved my card-grid alignment problem without JavaScript. Here's the before/after code I use in production, plus what still breaks.
htmx or React in 2026? After shipping both, here's when I reach for htmx, when I stay on React, and why the online essays get…
I spent three years faking a CSS parent selector with useEffect and MutationObserver. Then :has() shipped everywhere. Here's what I deleted and what stayed.
My real Tailwind v3 to v4 migration notes: the utility renames, the CSS-first config, the PostCSS pipeline change, and every place my styles quietly broke.
I ran Cypress for years, then moved my e2e suite to Playwright. Here's what actually broke, what improved, and how I'd do the migration again.