#31: Add DX Smarts to “fetch” & Sweet Ergonomics to HTML Web Components
Going with the grain of the web, one handy-dandy lil' library at a time. Published by Jared White
Yo! We got a new discussion forum! 🎉 Hop on over and discuss this newsletter and all things Indie Web Dev!
Thursday, September 18, 2025
🍂 Happy (just about) Fall y’all…at least for those of you in the northern hemisphere! (Otherwise, Happy Spring! 🌷)
As you know, here at That HTML Blog we're all about layering on lightweight and “vanilla-adjacent” tools to projects after you've fully outgrown native web APIs (and got sick of writing a ton of boilerplate 😏).
Today there's a couple of them, one of which yours truly wrote (!) as an extension for HTMLElement
. I think it's awesome you can write a web app using nothing but customElements.define
and fetch
APIs, and then as you need to improve DX and UX when the needs become truly ambitious, you can level up with libraries which “go with the grain” of the web.
BTW, did you know That HTML Blog was always intended to be a link aggregator? It'd be swell if you popped on over to our Contact page and let me know what YOUR favorite vanilla-adjacent HTML/CSS/JS libraries are. I want to highlight more of them going forward.
There's also movement again on a number of web specs hitting production browser engines (or widespread beta testing) after a bit of a lull, so I hope to touch on some of those shortly as well. Keep an eye out for that!
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, thanks again for your time and attention. On with today's topics! Enjoy. 💪

Give “fetch” a Bit More Oomph with “ffetch” | That HTML Blog
How do you handle unpredictable network scenarios gracefully and provide a good user experience?

Announcing Reciprocate, a Sweet Solution for Making Your HTML Web Components Reactive | That HTML Blog
A new helper utility for adding signal-based reactivity and attribute/property reflection to any vanilla custom element class.
Thanks for reading! See you here next week,
Jared ✌️
P.S. Don't forget to join the discussion forum! Chat about this newsletter and a whole lot more! #WebDev
🤔🌩️ Things that make you think: 💡😃
The web as a platform is a safe bet. It’s un-versioned by design. That’s the commitment the web makes to you—take advantage of it.
- Opt into web platform features incrementally: To paraphrase my good friend Ryan Townsend, customers don’t want smooth page transitions—they want a website that works. Don’t make your entire site a single page app just so you don’t have to retransmit a header and footer.
- Embrace progressive enhancement to build fast, reliable applications that adapt to your customers’ context: The beauty of opting into web platform features as they become available is that your site becomes contextual. The same codebase adapts into its environment, playing to its strengths, rather than trying to build and ship your own environment from the ground up. Meet your users where they are.
- Write code that leans into the browser, not away from it: By using progressive enhancement, you can opt into browser-native features that are usually faster, more accessible, more secure, and—perhaps most importantly to the business—maintained by someone else.
–Harry Roberts (CSS Wizardry)
