Tailwind Weekly #221: v4.3.2 Fixes, eslint-plugin-tailwindcss Rewrite shadcn/ui ported to Blade π
Hello folks!
Hope your week's been a good one! This issue has a little bit of everything: a fresh Tailwind v4.3.2 patch release, a complete rewrite of eslint-plugin-tailwindcss, and a fun look at how Jonathan Reinink is building templates with AI agents π€ Plus some solid CSS deep-dives on animations, font fallbacks, and sticky positioning quirks.
Let's dive in π
π News
Tailwind CSS v4.3.2 is out
The Tailwind team shipped another patch release this week with a nice batch of bug fixes. Highlights include support for bare spacing values in auto-rows-* and auto-cols-* utilities (so auto-rows-12 now just works), several stability fixes for the CLI and Vite plugin in watch mode, and smarter @source scanning that no longer picks up unrelated sibling folders.
eslint-plugin-tailwindcss v4 is here
Big news if you lint your class names: eslint-plugin-tailwindcss got a complete rewrite for Tailwind CSS v4. It's now written in TypeScript, leans on Tailwind's internal tooling for accuracy, and even includes shadcn/ui's cn function in its default settings. Heads up though: v4 only supports Tailwind v4, ESLint flat config, and Node 20.19+. The team has been busy shipping patch releases too (v4.0.4 through v4.0.6 landed this week alone), fixing false positives and peer dependency issues, so it's getting more stable by the day.
Jonathan Reinink is building templates with AI
Here's a fun peek behind the curtain: Jonathan Reinink shared on X how he's building a new template (designed by Steve Schoger in Figma) using Codex instead of writing it by hand. His workflow is interesting: he feeds the agent reference components he previously wrote by hand, provides all five breakpoints per component via the Figma Codex plugin, and then cleans everything up with the `canonicalize-tailwind` skill from ui.sh to get more idiomatic Tailwind code.
π€© Windy Picks

Wispr Flow has been my daily driver for a while now, but the dev-focused angle is what makes it so good. I pair it with Claude Code and Solo and just talk through what I wantβFlow handles the camelCase, the snake_case, the acronyms, and dev terms like Supabase or MongoDB without mangling them. No more fixing transcription mistakes on every variable name.
The best part is how it stays out of the way. It works in any app (editor, browser, Slack, ChatGPT, Claude) so I can dictate a detailed prompt, knock out a PR summary, or fire off a quick reply from my phone without switching tools or breaking flow. It learns your vocabulary too, so the weird product names and project-specific words you say constantly stop getting misspelled.
If you spend your day typing prompts and context into AI tools, talking is just faster, and WisperFlow is the first dictation app I've used that actually keeps up with how developers write.
Try it free, and it works on macOS, Windows, iPhone, and Android, so you can flow wherever you code.
π Learning

CSS vs. JavaScript
If youβve ever wondered whether CSS animations are βalways fasterβ than JavaScript ones, this article does a really good job of unpacking the nuance. It walks through the classic CSS keyframes vs. requestAnimationFrame loop comparison, explains why the JS version can stutter (not because the math is expensive, but because it fights for time on the main thread), and then takes it a step further by comparing real-world libraries like Motion and GSAP. The most useful takeaway is learning when JS animations are totally fine, when theyβll get choppy in app-y UIs, and why a WAAPI-based approach can give you the best of both worlds.
font-family Doesnβt Fall Back the Way You Think
We've all seen that dreaded flash of Times New Roman when a web font hasn't loaded yet, and Harry Roberts explains exactly why it happens. Turns out font-family fallbacks are self-contained; if you declare font-family: "Open Sans" on an element, the browser won't walk up the DOM and use the parent's stack when the font isn't available. It falls back to the browser default instead (hello, Times). The fix is simple: always specify a complete stack every time you declare a font-family, even if it feels redundant.
The Weird Parts of position: sticky;
Sticky positioning is one of those features that seems dead simple until it mysteriously stops working. Adam Rackis breaks down the two big culprits: your sticky element being taller than its scroll container, and (the sneakier one) a parent element that's too small for the sticky to stick without "breaking out" of it, which the CSS spec doesn't allow. This second issue shows up all the time in flex and grid layouts, since children default to stretch, and the fix is usually just a well-placed self-start. Also, all the examples are written in Tailwind, so you can see everything in one place.
π Showcase

Cozy
Cozy is a local-first journaling app for macOS & Windows that keeps everything on your device; no server sync, no AI touching your entries, just plain Markdown files on your computer. You can add photos, audio, and videos to entries, tag them, track habits, and even write in a distraction-free mode with ambient sounds (rain, cafΓ©, fireplace). It also imports from Day One, Notion, Obsidian, and Bear, so switching doesn't mean starting from scratch. One-time purchase of $35, no subscription.
π Resource

BlatUI
Laravel folks, this one's for you! BlatUI is a full port of shadcn/ui to the BLAT stack (Blade, Laravel, Alpine & Tailwind v4), we're talking 153 components, 64 blocks, 34 templates and even 70 charts. Everything gets copied into your project with a single Artisan command, so no npm runtime and no black-box dependency, you own the actual Blade files. It's MIT licensed, ships light + dark by default, and there's even an MCP server so your AI tools can install components.
π Cool Stuff
β PikaPods β Self-host your favorite open source apps in seconds. PikaPods runs them for you with automatic updates and backups, and shares revenue with the original developers. New accounts get $5 in free credit to try it.
Mochi β Spaced repetition flashcards you create with Markdown and study with smart review schedules.
Staying Ahead with AI β A weekly newsletter covering AI news, tools, and breakthroughs for thinkers and builders.
VibePHP β A satirical PHP "runtime" where an AI reads your code and hallucinates the HTTP response instead of executing it.
Do you want to share something with the Tailwind CSS community?
You can submit a link or message me on Twitter @vivgui.
Want to support the newsletter? You can buy me a coffee with this link π.
Discussion