Previously we wrote about Reciprocate, a library for adding signal-based reactivity to server-rendered #HTML #WebComponents. Pretty cool problems to have solved, but what if you wanted more dynamic client-side smarts and the ability to write declarative templates with a trusty html`` function? Tada! 🎉 Thanks to Joe Pea @npub1fjm5...jz47 that #WebDev problem has also been solved. Wire up these two solutions together, and you'll be authoring new UI components using familiar DX. 🙌
This is fantastic news! 🎉 Lit remains the gold standard in “I want to author #WebComponents but I must have DX I'm already familiar with”. It's truly an incredible project. It powers the best UI framework (imo) in the biz, @npub1s7sk...047y. It was used to build Adobe Photoshop for the web. It was used in Reddit's latest redesign. Wonderful to see it's been gifted to the community and is no longer a “Google” project. Here's to many more years of being Lit! 🔥
The path to enlightenment is inspecting the assets which get shipped to the browser on a regular basis.
I cannot sing the praises of fetch loudly enough. As a #JavaScript #WebDev, having ready access to this native web API where you can pull down #HTML fragments or #JSON data with a line or two of code is simply brilliant. But when shipping robust production code, how do you handle unpredictable network scenarios gracefully and provide a good user experience? One solution: a tiny 2.3KB wrapper around “fetch” called “ffetch”. Here are some of its features:
Announcing Reciprocate, a Sweet Solution for Making Your HTML Web Components Reactive Have you ever been chipping away on vanilla #WebComponents when you began to wonder “hey waitaminute…how do I make it so when I set this #JavaScript property, the equivalent #HTML attribute is updated? And if I set this attribute, the equivalent property is updated? Or when either is updated, my component will re-render?! Where are the APIs for this stuff??” Worry no longer! 🤓 #WebDev
This is still one of the coolest #WebComponents patterns ever. 🥰 #WebDev #JavaScript image
Hey y'all, a new #fediverse social web forum is in da house!! 🎉 Talk learning #WebDev from base principles and help fellow newbies experience the joys of vanilla #HTML #CSS #JavaScript and #WebComponents! (with a sprinkle of lightweight tools to smooth out the bumps in the road ☺️) Check it out:
Signals, a reactive primitive popularized by many #JavaScript frameworks and libraries, makes it much easier to add declarative binding to your #HTML using basic vanilla DOM techniques + signal effects. I haven’t had a concrete example to show off just how simple yet powerful this can be…until now! 😎 Here's the ubiquitous counter demo, todo list with a completion count, and typewriter printing out a message—all with a binding solution in only 20 lines of code! #WebDev
And here we are. image
And now, the post you've all been waiting for… (probably not, but you get it anyway!) 😂 The #CSS Framework Wars™ have come to an end. And we can thank…#Tailwind v4 for that! 🤯 Freely compose UI using native CSS variables & syntax, Tailwind design tokens in CSS (configured with CSS!), and Tailwind utility classes only where it makes sense. Hallelujah! 🙌 As historically one of Tailwind's biggest critics it is *weird* to sing its praises. 2025's biggest #WebDev surprise?