#30: Declarative HTML Binding with Signals, Tailwind + 🍦 CSS = 🥰
Plus ever ask a developer if an idea is possible? And their brain lags out with a little loading spinner? There are Reasons.
Friday, August 8, 2025
Hello #WebDev friends! Today I got a one-two punch for you: a starting point for your own explorations of how to use signals in declarative HTML markup. Signals, a reactive primitive popularized by many JavaScript frameworks and libraries, makes it much easier to add declarative binding to HTML using basic DOM techniques + signal effects; yet I haven’t had a concrete example to show off just how simple yet powerful this can be…until now! 😎
On top of that, I finally checked off a longstanding todo item to write about how the release of Tailwind 4 completely changes the calculus if one can be a unapologetic fan of vanilla CSS and still get something useful / compatible / future-proof out of the framework. Demo code and an Eleventy repo for your viewing pleasure!
In other news, I'm presently knee-deep in development of a brand-new and very ambitious consumer-focused web application (100% hand-coded, of course, other than dependencies). It's something I hope to share more about shortly, and of course it doesn't hurt that all the stuff I'm having fun working on serves double-duty as fodder for future That HTML Blog content. Talk about a win-win scenario! ☺️
Hey, so you wanna keep learning about “vanilla” web tech and how to escape the hell of JS framework churn? Make sure you don't miss another issue of That HTML Blog:
Anyway, on with today's topics! Enjoy. 💪

Friends at Last: Tailwind & CSS…whodathunkit?! | That HTML Blog
Freely compose UI using native CSS variables & syntax, Tailwind design tokens in CSS, and Tailwind utility classes.

Declarative HTML Binding in Only 20 Lines of Code! (and Signals) | That HTML Blog
Start with a solution as basic as this and ratchet up the complexity only when needed.
Thanks for reading! See you here next week,
Jared ✌️
🤔🌩️ Things that make you think: 💡😃
If you ever ask a developer if an idea is possible and their brain lags out with a little loading spinner over their head, it might be this enormous pile of concerns [security, performance, accessibility, etc.] they’re mulling over. That can be an issue, but I’d be more concerned about the developer that instantly says “Yes” to everything. And if you’re tired of developers saying “No” all the time, ask your developer about ways to put them in situations where they can say “Yes”.
–Dave Rupert