Axum Error Handling: the Split That Stopped My Opaque 500s
How I split thiserror and anyhow inside Axum handlers, then let IntoResponse map domain errors to real status codes without leaking internals to callers.
How I split thiserror and anyhow inside Axum handlers, then let IntoResponse map domain errors to real status codes without leaking internals to callers.
Pages Router in Next.js isn't legacy in 2026. Here's when I still reach for it instead of App Router on real production projects, with code…
After 4 years with Tailwind, I extract components way later than guides suggest. Here's what earns a real component, what stays inline, and why my…
The Axum patterns I actually use in production Rust services: extractors, Tower layer ordering, an error enum that works, and pragmatic tracing.
I sat on the Tailwind v4 upgrade for three months. Here's what actually broke when I migrated a production Next.js app, and what I'd do…
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…
I've built real-time features both ways for years. Here's how I actually pick between WebSockets and Server-Sent Events without overthinking it.
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 months of Laravel Volt in production: where single-file Livewire components actually pay off, where they don't, and the bits that tripped me up.
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…