Long-form articles and micro-insights on web development, design systems, and the craft of building for the web.
If you're starting a new TypeScript project and not enabling strict mode from day one, you're building on sand. The types you skip checking today become the bugs you spend hours debugging tomorrow. Turn it on. Leave it on.
How I built an automated content pipeline that takes markdown and images and publishes structured content in under 3 minutes.
Your portfolio isn't a brochure — it's a living product. Treat content like code and publishing gets easier, not harder.
If you're using ACF's URL field type, switch to a Text field. The URL type blocks saving when the field contains a placeholder or partial URL — which is exactly what content editors enter first. I've seen this break client workflows on at least five projects. Text field with a description note about expected format. Every time.
Stop adding text-size classes to your semantic HTML elements. Your h1 doesn't need text-4xl if your CSS already handles h1 sizing. Double-styling creates specificity nightmares and makes your markup harder to read. Let your base styles do their job.
Everyone knows design systems are "good." But most teams skip them because the upfront cost feels steep. Here's what it actually costs when you don't build one.
How I built a content pipeline where I drop markdown and images, and Claude handles module selection, SEO, alt text, and publishing — in under 3 minutes.
After years of styled-components and Emotion, I switched to Tailwind CSS. Here's the real reason — and it's not what you think.