Eight years after her enthusiastic recommendation of Tailwind CSS, Julia Evans is back with a new perspective — one that's sparked intense debate across the HN community. This time, she's walking away from the utility-first framework and embracing semantic HTML with vanilla CSS.

From Chaos to Order, Then From Framework to Freedom

When Evans first adopted Tailwind, she was like many backend developers: completely lost on how to structure CSS. Between "total chaos" and Tailwind, the choice was obvious. But over the past week, she migrated several sites away from Tailwind and discovered something surprising — Tailwind had already taught her how to organize CSS. The framework wasn't just a tool; it was a teacher.

The Seven-Layer Architecture

Her new CSS system has seven layers, many inherited from Tailwind's design philosophy:

Reset — Copied directly from Tailwind's preflight styles. She realized she'd come to depend on defaults like box-sizing: border-box.

Components — The bulk of CSS, organized like Vue/React components with isolated files and classes that never override each other.

Colors — All colors defined as CSS variables in a single file, the sole source of truth for the entire site.

Font Sizes — Variable-based scale (--size-xs through --size-2xl) mimicking Tailwind's intuitive naming.

Utilities — Minimal cross-component shared styles, kept intentionally small.

Base — Only two site-wide rules: a 950px centered column for sections and orange link colors.

Responsive + Build — Bottom-up approach, starting with almost nothing and adding constraints as needed.

Community Firestorm: 259 Comments

The HN thread became the day's highest-scoring post, revealing a deep divide. Critics argue Tailwind inverts the proper order of web development — HTML should define semantics first, with CSS layered on top. "Practically every argument Tailwind proponents use boils down to 'I never learned CSS beyond a junior level,'" one commenter observed. Supporters counter that Tailwind's real value is eliminating the mental burden of naming things and providing design guardrails that prevent chaos.

Beyond the Technical Choice

What makes Evans' piece resonate is its honesty about growth. Tailwind was scaffolding when she needed it. Eight years later, having internalized its principles, she can build her own systems with confidence — not because frameworks are bad, but because she's ready to fly without training wheels.

📎 Original: jvns.ca · HN Discussion: 259 comments