cferdinandi,
@cferdinandi@mastodon.social avatar
thomasapowell,
@thomasapowell@fosstodon.org avatar

@cferdinandi 🤔 I am not sure I get this comparison as WCs simply do not address the same things nor do they mandate incrementaism & progressive enhancement. Of course you should write that way, but obviously you can be a SPA like React style bozo with WCs easily.

HTMX’s whole argument is about the web hypertext pattern & WCs say nada about that. In fact WCs and HTMX can work together … though ditch their custom attributes for data-* equivalent ones for sure!

P.s. typos in your first demo?

cferdinandi,
@cferdinandi@mastodon.social avatar

@thomasapowell Lots to unpack here... gonna spread it out over multiple responses...

> WCs simply do not address the same things

They do though!

cferdinandi,
@cferdinandi@mastodon.social avatar

@thomasapowell

> nor do they mandate incrementaism

Correct! WC's don't mandate anything, really.

cferdinandi,
@cferdinandi@mastodon.social avatar

@thomasapowell

> HTMX’s whole argument is about the web hypertext pattern & WCs say nada about that.

Not sure what exactly you mean here. WCs are unopinionated, but that doens't mean you can't use them in the exact same way with a smaller and more portable footprint.

cferdinandi,
@cferdinandi@mastodon.social avatar

@thomasapowell

> though ditch their custom attributes for data-* equivalent ones for sure!

WCs can have custom attributes, too!

thomasapowell,
@thomasapowell@fosstodon.org avatar

@cferdinandi Of course but as they are distinguished as - style a custom attribute is just fine. Decorating a standard HTML tag with non-standard attributes like HTMX does = no validation check possibilities for you.

thomasapowell,
@thomasapowell@fosstodon.org avatar

@cferdinandi Well the HTMX main point is architecture and usage. If you use island style and PE style WCs you are of course fine and well and degrade nicely. If you do mandatory JS WC + a SPA pattern you are often right back in React style problems just with less code. Of course that might be fine if building a long session style actual app great, but that is of course not what a lot of people do with React nor with WCs sometimes. HTMX goes after that kind of issue.

thomasapowell,
@thomasapowell@fosstodon.org avatar

@cferdinandi BTW HTMX it isn't really an end all be all nor new thinking - see Hotwire/Stimulus and their ilk which have been used successfully at scale for years https://hotwired.dev/ I even personally wrote and demoed about this style as Ajah (Asynchronous JavaScript with HTML) in my Ajax book like 16 years ago to give you a sense of ancient history.

TL;DR - It's just a possible approach and certainly not good for all things, just like WCs aren’t though I'd bet more on WCs! :-)

keithjgrant,
@keithjgrant@front-end.social avatar

@cferdinandi Yeah this echoes a lot of my thoughts. HTMX isn't a full framework — core essential functionality is missing for anything beyond basic examples — but it locks you in like one... and I didn’t even realize it weighs as much as one (at least a smaller one)

mattwilcox,
@mattwilcox@mstdn.social avatar

@cferdinandi Great post - you just keep singing from the same hymnsheet as me don't you! lol! Yeah, I'm... dubious of HTMX in practice, despite the theory. I've only used it via "Sprig" for CraftCMS and... yeah, not a fan of it though it does work well enough that we use it fairly regularly.

Something just feels off about it for my liking. And I wasn't certain what. The a11y thing hits the nail on the head for me.

sarajw,
@sarajw@front-end.social avatar

@mattwilcox @cferdinandi I see you two as kindred spirits across the pond

mattwilcox,
@mattwilcox@mstdn.social avatar

@sarajw Lol, I'm not sure Chris should be happy about that :p I'm a grouchy old bastard! @cferdinandi

sarajw,
@sarajw@front-end.social avatar

@mattwilcox @cferdinandi You're both grouchy about things worth being grouchy about 😆

  • All
  • Subscribed
  • Moderated
  • Favorites
  • webdev
  • DreamBathrooms
  • everett
  • ethstaker
  • magazineikmin
  • cubers
  • rosin
  • thenastyranch
  • Youngstown
  • mdbf
  • slotface
  • khanakhh
  • kavyap
  • InstantRegret
  • cisconetworking
  • anitta
  • GTA5RPClips
  • tester
  • Leos
  • tacticalgear
  • osvaldo12
  • Durango
  • ngwrru68w68
  • megavids
  • provamag3
  • normalnudes
  • modclub
  • JUstTest
  • lostlight
  • All magazines