On one hand: sure, anything you can express with an abstraction can be expressed without the abstraction. Some abstractions are unnecessary.
On the other hand: this introduces constraints that let you solve a class of problems without giving you so much rope that you can get tangled in it.
I'm very wary of adding unnecessary abstractions, but I'm very optimistic for solutions like HTMX. Lately I've been trying to build apps without any front-end JS, and there are pain points that make me want to allow JS sometimes. My hope is that HTMX/etc might solve these pain points without opening up Pandora's box and letting contributors write arbitrary JavaScript for managing the front-end.
On the other hand: this introduces constraints that let you solve a class of problems without giving you so much rope that you can get tangled in it.
I'm very wary of adding unnecessary abstractions, but I'm very optimistic for solutions like HTMX. Lately I've been trying to build apps without any front-end JS, and there are pain points that make me want to allow JS sometimes. My hope is that HTMX/etc might solve these pain points without opening up Pandora's box and letting contributors write arbitrary JavaScript for managing the front-end.