DEV Community

Cover image for πŸ† Top 5 full-stack JS frameworks in 2023 - which one should you pick for your next project? πŸ€”

πŸ† Top 5 full-stack JS frameworks in 2023 - which one should you pick for your next project? πŸ€”

Matija Sosic on July 25, 2023

In this post, we'll explore five of the top full-stack JavaScript frameworks of 2023 that every developer should consider for their next project - ...
Collapse
 
vincanger profile image
vincanger

Nice list. I'm surprised I don't see SvelteKit on here though.

Collapse
 
matijasos profile image
Matija Sosic

Yeah, in this list I was focusing on fully full-stack (missing a better word) frameworks, meaning they cover everything from the database to front-end. SvelteKit is still mostly staying on the FE afaik. But would be cool to cover in the future, I will keep it in mind!

Collapse
 
danawoodman profile image
Dana Woodman

SvelteKit + something like Supabase would check that box. It supports creating APIs, etc. Def not just for the front end

Thread Thread
 
vincanger profile image
vincanger

thanks for the info. Have been considering diving into SvelteKit for some time now...

Thread Thread
 
matijasos profile image
Matija Sosic

SvelteKit is comparable to Next/Nuxt if I got it right? Using BaaS-es is a totally legit choice but the focus of the article was on full-stack frameworks, so covering everything from db, BE and FE.

But BaaS-es would also be an interesting topic to cover, thanks for sharing!

Thread Thread
 
danawoodman profile image
Dana Woodman

Yes they're all "competitors" so to speak. Was just making the point that T3 and MERN are arbitrary stacks that people decided on, so doing SvelteKit+Supabase (or say Nuxt+Firebase) would be analogous to them

 
danawoodman profile image
Dana Woodman

Give it a shot. Hit me up on Twitter(X) or Threads @danawoodman with questions

Collapse
 
martinsos profile image
Martin Šoőić

I think SvelteKit doesn't cover the database layer? What is its backend story?

Collapse
 
danawoodman profile image
Dana Woodman

You can use any DB with it, which is arguably better than a prescriptive choice.

Also, T3 is just a set of tools, so you could say SvelteKit + Supabase (or any similar provider) would be equivalent

Thread Thread
 
matijasos profile image
Matija Sosic

Well, the benefit of a prescriptive choice is that there is a deeper integration within the stack/framework. Knowing your data models, full-stack frameworks such as Redwood/Wasp can do a lot for you, like generating CRUD operations, auto-invalidate cache etc.

Thread Thread
 
danawoodman profile image
Dana Woodman • Edited

Yea, I'm just saying T3 and MERN don't have any of that built in either so SvelteKit/Nuxt/Next would be comparable to them

Collapse
 
umbrien profile image
Umbrien • Edited

as well as SolidStart or Qwik City or Remix 😁

Collapse
 
matijasos profile image
Matija Sosic

Yeah none od these take care of a database and mostly focus on FE so I haven't considered them here.

Thread Thread
 
piwizard3852 profile image
Owen Wood

What do you mean by this? ORM included? SQLite out of the box?

Collapse
 
sanjayojha profile image
Sanjay Ojha • Edited

What about NestJs and AdonisJs ?
And how wasp is compared to full stack framework from other languages? Like Laravel from PHP?

Collapse
 
matijasos profile image
Matija Sosic

that's a good question - it's a bit confusing because all these frameworks call (or used to) themselves full-stack frameworks, while nowadays they are mostly used as API servers.

NestJs, Laravel and Adonis all fall in the same category as Ruby on Rails - backend-first frameworks that also (some of them at least) support HTML generation on server via templates. So if you want to build a "modern" full-stack web app, you will still need to pair it with React/Vue/Svelte, and then some state management system (e.g. Redux) etc.

That's why I omitted them from this write up. Hope this makes sense!

Collapse
 
sanjayojha profile image
Sanjay Ojha

Ya make sense. I love Laravel. We have 3 option there

  1. Use any frontend with Laravel as API.
  2. Use IntertiaJs with vue/react FE without API
  3. Use Livewire that give SPA like feeling but there is no SPA.

Was looking something close in nodejs community, hope wasp is what I am looking for or at least closer.

Thread Thread
 
matijasos profile image
Matija Sosic

yep, I think that's a correct breakdown. Wasp is actually similar to inertia here, only focused on JS - acts as a glue, does a lot stuff for you and you don't have to deal with the API (if you don't want to).

Hope you find it helpful and feel free to ask any questions in our discord! discord.gg/rzdnErX

Collapse
 
robkane1 profile image
Rob Kane • Edited

So if you want to build a "modern" full-stack web app, you will still need to pair it with React/Vue/Svelte, and then some state management system (e.g. Redux) etc.

This just isn't true. Once upon a time - maybe, but there are many more options now. Phoenix LiveViews (and the various ports of it from Elixir to other languages), Blazor, Flutter, not to mention the multitude of wasm compilation friendly tools and even Scala and Clojure frameworks.

Reactive web UIs are not restricted to JS anymore and in many cases, JS frameworks are a bad choice. I know the article is specifically about JS frameworks, but the comments seem to be suggesting that you need to pick a JS framework to begin with.

Edit: thanks for introducing me to a couple of new ones though. JS is my bread and butter, but I find myself putting it further down the list more and more often lately.

Thread Thread
 
matijasos profile image
Matija Sosic

Totally true, I never meant to suggest JS is the only viable choice, just was trying to keep within the JS bounds since that was the premise of the article :).

What's your go-to choice for building a web app?

Thread Thread
 
robkane1 profile image
Rob Kane

Totally depends on the requirements and constraints of the web app, the business, the team, the infra etc. But in the spirit of playing along, lets say a typical, run of the mill crud type app for a start up which also has a few real time and event driven features...

100% Phoenix with Elixir. Keep in mind that I hand roll in-house isomorphic JavaScript frameworks in my sleep these days, so I am definitely not a JS hater! :D

Collapse
 
matijasos profile image
Matija Sosic

re wasp - you can imagine it like laravel, but for the modern full-stack web apps and JS world. It's in Beta so might not have all the features from e.g. Laravel, but you should be able to build what you need in 99% of cases :)

Collapse
 
brense profile image
Rense Bakker

I'm not sure if its a good idea for new developers to get into things like the MERN stack in 2023... There are a lot more job opportunities in fullstack frameworks like next/nuxt or even remix and probably even sveltekit would be more beneficial to learn compared to MERN.

Collapse
 
matijasos profile image
Matija Sosic

Good point! I agree that new(er) apps will not dominantly be on MERN, but there is still a huge amount of apps that run on that stack so thus a honorary mention. The good thing is also that once you learn React that's the knowledge that stays with you, no matter which framework you end up using :)

Collapse
 
appurist profile image
Paul / Appurist

I don't quite get how you could ignore SolidJS (and Svelte and Quik) although it seems the qualification on this list is full-stack. Some of the best choices though (at least in my opinion) don't actually even need a back-end as part of the framework at all, such as SolidJS on Supabase. Row-level security on the db takes care of all that. I find the whole idea of a full-stack a bit old-school these days.

Collapse
 
matijasos profile image
Matija Sosic

I get you! I completely agree there are other valid choices, but the focus of this article was exploring full-stack frameworks. I personally like that they bring "batteries-included" experience and, having a full picture/understanding of your app, can provide some advanced features, especially around API layer and code generation.

Collapse
 
wezea profile image
Kristof

Great list and I will definitely give them a try. I am using Remix nowadays and there ist also the concept of Remix Stacks and it is easy to build your own too.

Collapse
 
matijasos profile image
Matija Sosic

That's really cool Kristof, thanks for sharing! I like how they described each stack and named it after a music genre :).

Collapse
 
zvone187 profile image
zvone187

Great summary! I'm was just looking for boilerplate generators for react apps. Looks like wasp does that.

Collapse
 
martinsos profile image
Martin Šoőić

Actually Wasp is trying to be more than a boilerplate generator and is instead trying to get rid of boilerplate! So unlike the scaffolders and similar that generate quite a lot of boilerplate, Wasp is a framework that abstracts all that away.

Collapse
 
matijasos profile image
Matija Sosic

For a quick start checkout our GPT-powered app generator: magic-app-generator.wasp-lang.dev/

Collapse
 
pazapp profile image
PaZapp

Lovely take on js

Collapse
 
matijasos profile image
Matija Sosic

Glad you like it! What's your weapon of choice?

Collapse
 
pazapp profile image
PaZapp

Yet to discover the best

Collapse
 
infomiho profile image
Mihovil Ilakovac

I haven't read about Meteor in a while, surprised to read about it now. How is it with modern tooling (e.g. Typescript and Vite)?

Collapse
 
matijasos profile image
Matija Sosic

Good question! I quickly scanned their changelog/roadmap and saw there were some tasks for improving their TS support, so I guess there is some support already there.

Collapse
 
maksim36ua profile image
Max

I've built several productionβ€”ready apps with Wasp already. One of them has been acquired.

Definitely can recommend if you need fast idea validation and prototyping

Collapse
 
matijasos profile image
Matija Sosic

That's amazing to hear! πŸ”₯πŸ”₯πŸ”₯

Collapse
 
nevodavid profile image
Nevo David

Great list!
Thank you!

Collapse
 
matijasos profile image
Matija Sosic

Thanks Nevo, glad you found it useful :)

Collapse
 
jorinvo profile image
jorin

I would put the epic stack in this list :)
epicweb.dev/epic-stack

Collapse
 
matijasos profile image
Matija Sosic

This is cool, thanks for sharing! :)

Collapse
 
elijahtrillionz profile image
Elijah Trillionz

Nice list. MERN still rocks

Collapse
 
quannh2 profile image
Quan Nguyen

Nice, but how about tRPC? I think it's amazing 😁

Collapse
 
matijasos profile image
Matija Sosic

Yep, T3 makes use of tRPC, and Wasp also has their own version of it :).

Collapse
 
quannh2 profile image
Quan Nguyen

Wow, I did not know about that. Let me try for the next project, thank you! <3

Collapse
 
afeiszli profile image
Alex

Great list!

Collapse
 
610470416 profile image
NotFound404

There is no full stack framework.

Collapse
 
matijasos profile image
Matija Sosic

no_spoon

Collapse
 
jippy89 profile image
Jip Irfandy

I was here to learn more about RedwoodJS vs NextJS and Supabase. But after seeing the list again, I'm confused about what to choose. What's your take on NextJS and Supabase compared to all the listed frameworks above?

Collapse
 
tfrazzet profile image
Tommaso Frazzetto

I think it would be better to change the title of the article to 'Top 5 full-stack JS frameworks in 2023 but only if you use React'

Vue? Angular? Svelte?

Collapse
 
matijasos profile image
Matija Sosic

I get you, but it is just the fact that (afaik) there aren't really any full-stack frameworks outside React. When I say full-stack, I mean a framework that owns everything from database to back-end and front-end.

Tools like Next/SvelteKit/Nuxt are otherwise great, it is just they need a bit more wiring with other tools to get a complete FS solution, so they weren't a scope of this article.

Collapse
 
tfrazzet profile image
Tommaso Frazzetto

If we want to be precise, then, not even those mentioned can be full stack frameworks, since React is not a framework, but it is a library (as opposed to Vue, Angular and Svelte which are real frameworks) ;)

Collapse
 
m00nnight profile image
Zamil Khan

Hi, I’m Zamil a student. Today’s I am looking for a internship program so is there anything relevant platform or resources that I can use to get internship opportunities

Collapse
 
potuss7 profile image
Pedram Riahi

Which one do you recommend?