All posts
Jan 20, 2026·6 min
Tailwind v4: the migration notes I wish I had
Tailwind CSSCSS
Tailwind v4 moves configuration out of JavaScript and into CSS. Your `tailwind.config.ts` mostly disappears; design tokens live in an `@theme` block instead.
The mental shift is that everything is a CSS variable now. Define `--color-brand` once and it’s available as `bg-brand`, `text-brand` and as a raw variable for custom CSS.
Content detection is automatic, the engine is dramatically faster, and `@utility` lets you author first-class utilities like the old `container`. The migration took an afternoon and removed more config than it added.