Shorter, present-tense pieces on building for the web as it is now — and as it will still be later.
The W3C's October 7 editor's draft replaces A/AA/AAA with Core Requirements plus an achievement score — here's what's settled and what's still moving.
Chrome 155 and Firefox 157 both ship native JPEG XL decoding this month, ending years of browser disagreement over the format.
How to use native CSS custom properties as the backbone of a design token system that scales across themes and components.
@supports can finally ask "does this browser understand @scope at all?" — no more guessing from unrelated property support.
Google's 2026 update changed how INP is measured and weighted — here's what shifted and the concrete fixes for LCP, INP, and CLS.
Per-corner radius shorthands, an inline counter function, and whitespace-aware underlines land in stable Chrome.
scroll-marker-group gets real keyboard and screen-reader semantics, plus two other quiet fixes.
Semantic markup is not a ranking hack — it's the difference between a page a crawler can parse confidently and one it has to guess at.
A URL is the smallest, most durable piece of UI you ship — treat it like one.
Modern CSS quietly retired the resets, the hacks, and most of the reasons we once dreaded the cascade.
Accessibility isn't a toggle you add near the deadline; it's the baseline the platform already gives you.
Frameworks arrive and retire on a schedule; the markup underneath is what actually endures.