Tailwind Config in v4: Six Months Without tailwind.config.js
I deleted tailwind.config.js six months ago and moved every theme variable into CSS. Here's what changed about my workflow, and where the new approach still…
I deleted tailwind.config.js six months ago and moved every theme variable into CSS. Here's what changed about my workflow, and where the new approach still…
Six months running Laravel AI in production: the stack I actually reach for, the package I bailed on, and the parts that are still mostly…
Six Next.js server actions mistakes I shipped to production: trusting the client, missing revalidatePath, throwing errors wrong. With code fixes for each.
My honest take on Bun vs Node after six months of mixing both: where Bun earned a real spot in my workflow, and where Node…
I've shipped Go HTTP services with all the big frameworks. In 2026 I default to net/http with chi, reach for Gin to move fast, and…
I shipped a refund bug that branded types would have caught. Here is how I use TypeScript branded types for IDs, money, and validated input,…
A new attack exploits the fact that most LLM safety layers evaluate turns in isolation. Here's what the Transient Turn Injection result means for anyone…
PHP 8.4's asymmetric visibility lets you make a property public-read but private-write. Here's the before/after code and the three situations where I reach for it.
A plain-English tour of Rust memory safety for people who already write code in other languages. With real before/after snippets in C and Rust, and…
I ignored Tailwind container queries for two years and it cost me. Here's the before/after of a card component I rebuilt, and when @container beats…