HTML-ivating your Django web app with Htmx, AlpineJS, and streaming HTML
youtube.com
youtube.com
However, now that I'm getting to the point where I want to take my web app from "pretty cool toy" to something I can sell to users with all the bells and whistles, I'm having a bit more trouble. There just aren't as many examples out there for "bell and whistle" patterns than there are with React.
Eg: I want to implement typeahead. When I google "typeahead htmx alpine" I get some blog posts, some reddit posts, some random github gists. Cool, but looks like I'm going to have to think about the problem and toy around with it a bit to get it working. It's not quite "copy and paste this component". When I google "typeahead react" the 1st link is a pretty popular npm package that seems to support everything I want (and some stuff I didn't even know I wanted). Complete with user guides and docs and everything.
So now I'm asking myself whether I made the right decision trying to keep things "simple" with htmx/alpine? It's not even about whether my app is a SPA or not, or "how much interactivity I want" (which is a difficult question actually if you're not familiar with FE - what is interactivity, exactly?), it's more like "which framework is easier to blindly stumble through (with ChatGPT's help) to get what I want".
> it's more like "which framework is easier to blindly stumble through (with ChatGPT's help) to get what I want".
I understand the sentiment but tech-wise it's a good thing that it's harder to do.
The other way would have you installing a (probably large) dependency, of which you'd use perhaps use 10% of its capabilities, expecting a response from the server that you might not have, and add more custom CSS that you'd have to wrangle together with your own styling.
Which might be fine if it's just you and you understand the tradeoffs, but if it was a team of 20 people each of them would do the same thing and the app would grow by accretion. Not just in size but in complexity. Which would necessitate more build tooling, more tests, maybe even changes to infrastructure...
Cobbling together things like that, while fast and fun, isn't necessarily great engineering. Sometimes we all have to do something quick and dirty, sure, but being forced to take a step back to think it through isn't a bad thing.
What’s the React one you were looking at?
Alpine.js has never really clicked for me. Outside of anything simple I find myself struggling with the framework.