DEV Community

Cover image for Web frameworks we are most excited for in 2024

Web frameworks we are most excited for in 2024

Boris Martinovic on February 13, 2024

Introduction 2024 is upon us, and we try to plan for the new year and think of the things we could do or learn in the upcoming year. The...
Collapse
 
martinsos profile image
Martin Šošić

Nice article, I was mostly curious about htmx because I keep hearing about it -> I wish though that article had more code examples, maybe one code example for each framework!

Collapse
 
matijasos profile image
Matija Sosic

fixed :)

Collapse
 
martinsos profile image
Martin Šošić

Ha ok nice!

Thread Thread
 
neidiom profile image
Nedim Hadzimahmutovic

Are you cousins or something?

Thread Thread
 
matijasos profile image
Matija Sosic

almost - twin brothers! :)

Thread Thread
 
matijasos profile image
Matija Sosic

I'm the older one though.

Collapse
 
mvolkmann profile image
Mark Volkmann

I've got you covered with htmx code examples here, especially in the "Common Patterns" section: mvolkmann.github.io/blog/topics/#/...

Collapse
 
infomiho profile image
Mihovil Ilakovac

I'd love to see some complex HTMX web sites to try out for my self. I just feel there is a cut off point where it starts making less sense to use HTMX than full-blown JS frameworks.

Collapse
 
mvolkmann profile image
Mark Volkmann

See my htmx blog post here, especially in the "Common Patterns" section: mvolkmann.github.io/blog/topics/#/...

Collapse
 
seandinan profile image
Sean Dinan

For the point about Solid.js compiling to vanilla JS, isn't that true for all frameworks?

Whether it's using a virtual DOM or not, isn't it still just running JavaScript code in the browser? (excluding WebAssembly, which I don't think comes into play here)

Collapse
 
martinovicdev profile image
Boris Martinovic

Good point. I mainly wanted to emphasise the fact that Svelte doesn't use virtual DOM unlike React.

Collapse
 
rolanday profile image
Roland Ayala

Exciting stuff. I went deep into porting my app to Qwik (City), Solid (Start) and Svelte (Kit) this past year, and they're all great until I eventually hit a snag or friction due to their respective ecosystems not yet being fully developed, and the common factor for me was that I was less productive than on React (despite much preferring the DX of all three to React). Solid would be my choice of the three, but Start hasn't even shipped yet and is still churning. Qwik is the most innovative and has the best DX IMO, but it doesn't seem to be catching on (e.g., still no official tanstack support), and some of it's design choices complicate 3P component development (e.g., github.com/chakra-ui/zag/discussio...). Svelte? Well, I just much prefer JSX, and it's still baking (Runes forthcoming, and zero interest in refactoring my code, even if Svelte appealed to me, which it does not). I've since gone back to React (Remix), and will wait it out another year or two before making the switch, if at all.

Collapse
 
martinovicdev profile image
Boris Martinovic

The big part of appeal of React is the ecosystem that developed around it mainly because of its longevity. Over time, ecosystem of other frameworks will hopefully catch up.

Collapse
 
rolanday profile image
Roland Ayala

Very true. Who will be the next React and gain critical mass is anybody's guess right now, which is why I've opted to wait it out despite my natural inclination to want to jump on board with latest shiny new thing.

Collapse
 
zvone187 profile image
zvone187

Great article Boris. It's interesting how you think Svelte is easy to learn - we used it in one project, and since it was implemented, I regretted it 🤦‍♂️ to me, it seems very unintuitive and complex

Collapse
 
martinovicdev profile image
Boris Martinovic

Thank you! I pointed out that Svelte is easy to learn because it is intuitive to get into it after learning basic HTML/CSS/JS since the structure is similar.

What created issues for you? Was it that the project was too complex, or something else?

Collapse
 
zvone187 profile image
zvone187

Maybe it's due to the fact that we used it to create a VSC extension. Not sure how it works on a regular website.

Collapse
 
pavelee profile image
Paweł Ciosek

Great post! Thank you! 👏

Collapse
 
merri profile image
Vesa Piittinen • Edited

Remember that since HTMX does things in a bit of a new way it may have accessibility concerns that have not yet been tackled. The other solutions are more proven on this regard.

That means if your project has any possibility for legal a11y requirements then you have to pay extra careful attention whether you can use the tool.

Note that even the more proven solutions may still be a bit lacking, such as client side routers do have issues in frameworks like Next so they are not fully accessible by default. Issues are like focus being in the wrong place, or page not scrolling to top when client side routing happens. However you will never have this issue if you rely on traditional HTML page load.

Collapse
 
martinovicdev profile image
Boris Martinovic

That is really useful information. a11y must be taken as one of the things to consider when choosing your framework as well.

Collapse
 
bicho_0 profile image
Bicho

Cool post bro! Thx for sharing

Collapse
 
aloisseckar profile image
Alois Sečkár

Can see why all of those were picked, but I'll just stick with getting more proficient in Nuxt.

Collapse
 
kurealnum profile image
Oscar

I'm super excited to see where HTMX goes. I've used it for a few Django projects before, and I absolutely love it.

Collapse
 
ragudos profile image
Aaron

I like HTMX when learning a new language and I want to play around with making a simple http website

Collapse
 
jacksbridger profile image
Jack Bridger

nice!!!

Collapse
 
alexroor4 profile image
Alex Roor

can we consider 2024 the year for something new or something good? in any case, web3 will not stand still, but will only progress

Collapse
 
sectasy0 profile image
sectasy

I'm a little disappointed that there are only javascript frameworks in this listing.

Collapse
 
martinovicdev profile image
Boris Martinovic

Which ones would you recommend to look at? Blazor, Yew, Flutter Web?

Collapse
 
sectasy0 profile image
sectasy

I like Phoenix and Ruby On Rails. Ruby on rails is still a great chose!

Collapse
 
matijasos profile image
Matija Sosic

This is a really good overview, Boris! I keep hearing about Solid and Svelte but never heard an easy explanation of how they differ and what are their main strengths. Thanks for clearing that up!

Collapse
 
jliter profile image
John Liter

This article as very helpful. Provide and bring some exciting and valuable tools to my attention. Thank You!

Collapse
 
architw profile image
Archit Warghane

Check out AHA stack if you would like to couple HTMX, 💯

Collapse
 
stokry profile image
Stokry

After many, many years, Rails still stands out as the best framework overall.

Collapse
 
chovy profile image
chovy

primatejs.com is the one I'm currently involved with.

Collapse
 
ricardogesteves profile image
Ricardo Esteves

Nice article @martinovicdev! wasn't aware of Qwik, will give it a look.
Thanks for sharing.

Collapse
 
oliie profile image
Oliver Praesto

Svelte will also hit version 5 soon where the syntax will be a bit different, but it will solve a lot of issues. You can look at the new syntax at component-party.dev/

Collapse
 
jholmes033169 profile image
Jerry Holmes

Gotta say... Svelte has changed the game for our shop.

Collapse
 
anikets2408 profile image
Aniket Sharma

Great Post 👏

Collapse
 
sahillangoo profile image
Sahil Langoo • Edited

About htmx its still a javascript and and can be coupled with other frameworks to achive best.
Have to check wasp!
Solid js could be loosing its charm!
Astro is a King maybe in coming days they are going to release astro database
Svelte 5 is just great
Quik 2.0 is noice
Conclusion
People Still going to use react 😂 and react 19 is also coming

Collapse
 
tzdesign profile image
Tobi

Finally someone is not missing qwik!

This is the one and only framework for me. The developer behind it are so skilled.

If qwik would be number one, the internet would be so much more performant.

Collapse
 
debadyuti profile image
Deb

I am all about back to the basics.

Collapse
 
donfour profile image
Donovan So • Edited

I feel like HTMX itself is not complete, more importantly is what you pair HTMX with on the backend. Some people are advocating for HTMX + Golang, which I'd really love to try one day.