DEV Community

What’s the best JavaScript framework?

Ben Halpern on July 28, 2019

I understand that this is a bad question and I’d always refute the notion of “best”.

But acknowledging that, let’s debate this out for fun. 😄

Collapse
 
dmtrkovalenko profile image
Dmitriy Kovalenko • Edited

meme

Collapse
 
zerquix18 profile image
I'm Luis! \^-^/

This made my day, my week, my month and my entire 2019 so far.

Collapse
 
cheston profile image
Cheston

Beautiful!

Collapse
 
vladimir_dev profile image
vladimir.dev

I like this answer the best

Collapse
 
itscodingthing profile image
Bhanu Pratap Singh

you are right my friend 😂

Collapse
 
kristijanfistrek profile image
KristijanFištrek

This is a trump card.

Collapse
 
itscosmas profile image
Cosmas Gikunju

😂😂😂 You beat me to this

Collapse
 
robinaspman profile image
Robin Aspman

fraemwurk

Collapse
 
ben profile image
Ben Halpern

Can I build the DOM into my server?

Collapse
 
merri profile image
Vesa Piittinen

Yes, you can! I've actually considered trying out sometime how performant it is(n't) to use jsdom to output HTML on a "real" server :D

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Haha please tell me this is not real!

Collapse
 
alexander171294 profile image
alexander171294

I think that the real definitive backend framework is Mozilla 😆

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

Vanilla js is great they have an awesome website too. Go and download a copy!

Collapse
 
therealkevinard profile image
Kevin Ard

Haha been using js for 15 years, and today is the first time I've looked for js.com 🤷‍♂️

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

This is the OP hipster framework.

vanilla-js.com/

Thread Thread
 
therealkevinard profile image
Kevin Ard

I friggin ♥️ that page.

BYO-Bundle! Hah!

Collapse
 
steveblue profile image
Stephen Belovarich

The best JavaScript framework is always the one you haven’t used.

Collapse
 
codeshard profile image
Ozkar L. Garcell

LoL. This answer should be printed in Christmas greetings cards

Collapse
 
steveblue profile image
Stephen Belovarich

I was thinking fortune cookie 🥠 but I’ll take it!

Collapse
 
niorad profile image
Antonio Radovcic

Angular? No Google or bust.
Vue? It's basically one guy, come on.
React? Boo, Facebook evil! And also pretty much one guy.
Preact? Get the FUCK OUT OF HERE.
Backbone? Stupid name, no way.
Ember? Come on now you're just making up names.
WebComponents? That's not.. has nothing to do wit.. just forget it.
Meteor? Yes take the spaghetti to the server, too no?

I don't know man, they all suck. Just throw a coin or something.

Collapse
 
defiance profile image
Defiance Black

With an aversion to JavaScript, I'll just comment that while learning Python/Django, I've been lead towards reading the docs of backbone.js. It's tolerable; the two map pretty nicely to each other. I also like the look/docs of riot.js.

Otherwise, yes; 100%, your comment.

Collapse
 
niorad profile image
Antonio Radovcic

Just like the post, my comment is a joke.

Thread Thread
 
defiance profile image
Defiance Black

It's not wrong. :)

Collapse
 
diegoisco profile image
Diego Isco • Edited

It depends

For a simple portfolio => VanillaJS
For a cool project to show=> React
For a complex app => Vue
For an enterprise-level app => Angular

That's all IMO 👻

Collapse
 
prahladyeri profile image
Prahlad Yeri

For enterprise apps, angular is a devil considering they made so many incompatible version upgrades and it is such an opinionated framework. Something stable like jquery and/or backbone is more suitable for enterprise apps.

Collapse
 
therealkevinard profile image
Kevin Ard

I think the enterprise appeal with Ng is its opinionated project structure. There's not much wiggle-room, so onboarding a new Ng dev to a 3-year-old Ng project is almost nil. ... compared to something else, this hire may take weeks to hit velocity.

And by "enterprise", we mean somewhere large enough that employee churn is part of the game, and devs are disposable.

Collapse
 
elasticrash profile image
Stefanos Kouroupis

I never expected I would agree with anyone in this kind of thread ..yes 👍

Collapse
 
geekbro profile image
Geek

What? Angular for Enterprise-level app? Angular's inconsistency can't make it. LOL.

Collapse
 
rhymes profile image
rhymes

Collapse
 
sm0ke profile image
Sm0ke • Edited

funny

Collapse
 
thatjoemoore profile image
Joseph Moore

Honestly? I've never had a better developer experience than in the late 2000s with backend-rendered templates with a sprinkling of jQuery for dynamic bits.

It was fast, accessible, worked in every browser, and if you did things right (caching, streaming the header before the body is ready, etc.), navigations felt seamless. We've still got some of these running that haven't been touched in a decade (other than updating dependencies and changing company themes).

clip from The Simpsons: old man dancing, singing "gimme that old-time fun"

But, when I really need the interactivity of a JS framework, my go-to is Vue, though I am very, very interested in the approach used by Svelte. I also really like Web Components with lit-element, but I feel there's still a bit of work to be done by the community to reduce the amount of plumbing needed to build a full app with them.

Collapse
 
thatjoemoore profile image
Joseph Moore • Edited

Now, to get really controversial: nothing's better than an page with just the standard header and an iframe containing the body.

Except maybe <frameset>...

Animated: old man breaks a plate and says "come on, grease monkey, let's tangle!"

Collapse
 
prahladyeri profile image
Prahlad Yeri • Edited

Wondering if anyone here has heard about thing called backbone.js. Though its an old framework, a large part of enterprise world still prefers it instead of modern ones like angular/vue.js.

On the backend or node side, express probably wins hands down.

Edit

I'm curious about the "popular" frameworks' popularity, so I've started a twitter poll myself. Do vote and let me know your choice!

Collapse
 
gypsydave5 profile image
David Wickes

Backbone... now there's a name I haven't heard in a long time...

Collapse
 
remon profile image
Raymond (Remon)

It was the first framework I used , old is gold :D

Collapse
 
defel profile image
defel

We had this in production 11 years ago.

Zombie Views, Zombie Views everywhere.

Collapse
 
lukewestby profile image
Luke Westby

I am the best JavaScript framework. AMA

Collapse
 
deciduously profile image
Ben Lovy

A magnetized needle and a steady hand.

xkcd 378

Collapse
 
andrewbrown profile image
Andrew Brown 🇨🇦 • Edited

DilithiumJs

Pending its completion.

import * as m from 'mithril'
import { Component } from 'monster'

import JourneyChapter from 'components/journey_chapter'

export default class Journey extends Component
  expects:
    chapters:
      presence: true
      array: true
    target: true
    user: true
  render:=>
    console.log 'chapters', @chapters
    m 'section.journey',
      m '.wrap',
        m '.section_title'
          m 'h3', 'Your Journey'
          m '.clear'
        m '.body',
          m '.chapters_wrap'
            m '.chapters',
              for chapter in @chapters
                m JourneyChapter,
                  chapter: chapter
                  target: target
                  user: user

It's used to power ExamPro and I've been working on an end-to-end tutorial on how to use it:

I organized the code into star trek-like departments

The CLI is also star trek inspired. So when you want to create a new app you type:

computer begin program <name-of-web-app>

Why create a new Javascript framework?
Modern framework feels over-engineered. I want to have the productivity that I used to have but I need a framework that is:

  • isomorphic,
  • solves all common use cases
  • has a strong dsl
  • with great documentation.
Collapse
 
cjbrooks12 profile image
Casey Brooks
Collapse
 
nataliedeweerd profile image
𝐍𝐚𝐭𝐚𝐥𝐢𝐞 𝐝𝐞 𝐖𝐞𝐞𝐫𝐝

Um... are you stupid or something? Just attackclone the grit repo pushmerge, then rubygem the lymphnode js shawarma module – and presto!

That gave me a proper chuckle!

Collapse
 
cecilelebleu profile image
Cécile Lebleu

As far as I know, vanilla is always the best flavor.

(Don’t trust me yet I’m not experienced enough to have a proper informed opinion)

Collapse
 
ben profile image
Ben Halpern

That’s a good opinion 👌

Collapse
 
cecilelebleu profile image
Cécile Lebleu

Thank you! :’)

Collapse
 
jacobmgevans profile image
Jacob Evans

None of them. As in a tool in mechanics or construction, there is the right tool for the job, it's just a matter of knowing enough to pick the right one. Sometimes all you need is a hammer and a crowbar, other times you might need that volt meter, pressure gauge, and torque wrench... It just depends.

I use React, I think it's great but I've looked into others, like Vue, Angular, Svelte, and see their usefulness and benefits. Personally, I would love to master all the things but I chose to focus on React ecosystem and JavaScript I plan on getting into TypeScript.

Collapse
 
jacobmgevans profile image
Jacob Evans

You always need duct tape around. I leave it to you to decide your analogical tech equal to duct tape lol 😆

Collapse
 
ben profile image
Ben Halpern

So far nobody’s falling for my bait 😄

Collapse
 
snesjhon profile image
Jhon Paredes

The best javascript framework is all the friends we made along the way.

Collapse
 
webixui profile image
JavaScript-Webix-UI

webix.com or dhtmlx.com

Collapse
 
jeromehardaway profile image
Jerome Hardaway

Fake News LOL. More like what’s the best JavaScript practices in regards to frameworks is a better question. I hate with a passion when a student builds their entire portfolio with React when building it static and building one component that handles something that actually needs to be React ( using real time data, like an auto completing search bar ) will do.

Collapse
 
gdledsan profile image
Edmundo Sanchez

Exactly.
It is very common to use a god damned 2 ton truck to move the contents of your night stand drawer.

But, i do get the need to show you actually know react, or whatever flashy thing facebook did.

Collapse
 
stereobooster profile image
stereobooster

Are you serious? You want to have orange website thread here?

Collapse
 
ben profile image
Ben Halpern

I’m banking on some self-awareness here.

Collapse
 
taillogs profile image
Ryland G

The one that gets the job done the fastest.

Collapse
 
stealthmusic profile image
Jan Wedel

How do you know?

Collapse
 
darkes profile image
Victor Darkes

I'm a backend dev so all I just started to get into learning React and personally I find it makes it is pretty straightforward. My personal reasons for landing on React were because I looked at job applications at companies I admire and saw React as a requirement more than others. Anyone see Svelte and Vue used by really interesting companies?

Collapse
 
mrispoli24 profile image
Mike Rispoli

Next.js + React + Typescript for me.

I was leaning toward Vue for quite some time but I've found typescript to be super helpful on really large apps. Last time I checked typescript cannot validate the template code the way it can for React jsx. Also Next.js 9 is really an absolutely wonderful platform and super flexible for the smallest to the largest apps. Nuxt for vue is great as well but Next 9 polished off the rough edges in my mind. React hooks have also grown on me considerably.

I do think Vue handles a few things better. The transition component baked in, computed values and watchers, truly reactive style, and event emitters are quite nice and intuitive in this framework.

That being said, I'm watching Svelte intently because I like the compiled approach to a front end framework, however their app framework Sapper is a little green for me to commit to on client projects just yet.

I think it's interesting that as of now, the combo of the front end library with typescript and the node framework is swaying my opinion as well. Typescript is a really nice, low-calorie safeguard for even small projects.

Collapse
 
hexrcs profile image
Xiaoru Li

Vanilla.js is da GOAT, hands down.

Collapse
 
ben profile image
Ben Halpern

🐐

Collapse
 
nekofar profile image
Milad Nekofar

It depends. 🤷‍♂️

Collapse
 
dhanushkadev profile image
Dhanushka madushan

Anyone using Aurelia? This seems good with OOP concepts.

aurelia

Collapse
 
aschwin profile image
Aschwin Wesselius

This would have been my suggestion too.

Collapse
 
ascotto profile image
Andrea Scotto Di Minico

Guess it depends what is your background, how big the team for project is, what the project is about and how much you want to earn. I used to do a lot of projects with jQuery, did some stuff with VUE, did also some small project with Svelte (could replace jQuery..) but decided to dig deep into React. Why? Because after joined a new project the team already used React so had to learn it. Understood that there is a HIGH demand of React devs I decided to follow this path even if my heart goes to VUE/Svelte.

Collapse
 
gdledsan profile image
Edmundo Sanchez

The problem here is in the title: javascript.

Anyway, frameworks can't be best at anything, they only provide structure to your work, they are the idea on how things should be, how things can be made easier.

The "best" is the one that is most compatible with your own vision, which is subjective, hence, no winner can rise from that.

Collapse
 
nicpolhamus profile image
Nicolas Polhamus

Thats some mighty fine bait you've got there.

For real though, I'm slowly becoming partial to Svelte. I love the idea behind it, and its fun to play with. But, as with a good amount of other devs have posted in the thread, "best" depends on the situation.

Collapse
 
chiangs profile image
Stephen Chiang • Edited

Oh boy the can of worms have been opened...🐛🐛🐛 😜

Collapse
 
straleb profile image
Strahinja Babić

I've tried a bit of react.js wasn't that much into it, and later devoted more time in learning Vue.js which was more interesting to me personally.
Later on, will surely come back to react to study it better.

Collapse
 
recss profile image
Kevin K. Johnson

I want people to keep making frameworks so we have good ideas to steal for the next "best" framework.

Svelte 3 made me feel like when I saw Angular the first time. Keep 'em coming.

Collapse
 
rootchips profile image
Roslan Saidi

Svelte

Collapse
 
veebuv profile image
Vaibhav Namburi

Hahaha as the disclaimer goes it depends

But for MYSELF

FW to get paid bank: React
FW to build a start-up from scratch: Vue
FW to build app's FAST: Vue
FW to land freelance clients: React
FW to stick to one language: Node/Express
FW to work with an ML environment via API: Python Flask API

FW to get paid today?: Whatever you're currently good at

Collapse
 
devdufutur profile image
Rudy Nappée

React isn't a framework guys... Frameworks are evil, juste use react with plain old vanilla es6, eventually redux, lodash, typescript if you like having a complicated life and you're on for writing any webapp 😁

For pure website, PHP or JEE are fine, excepts if you want to deal with ssr shit (and a lot if technical debt).

Maybe there is a start of a troll but I guess it's pretty fair, right ?

Collapse
 
rhymes profile image
rhymes
Collapse
 
jasman7799 profile image
Jarod Smith

svelte.js

imo the next big iteration since react

Big Idea

All the work to make the state change reactive is done in compile time and not runtime thus speeding up things up alot.

Major Drawback

Still an early framework, so it will need some time to be a truly competitive alternative to something like react and vue, but it will in my mind surpass them eventually

Collapse
 
stefandorresteijn profile image
Stefan Dorresteijn

No Ben, no!

Collapse
 
therealkevinard profile image
Kevin Ard

WASM

(Ohhhhhh i just made some people mad 😈)

Collapse
 
jonrandy profile image
Jon Randy 🎖️

Riot is the nicest one I've tried - riot.js.org

Collapse
 
carlillo profile image
Carlos Caballero

Angular - large projects
VanillaJs/TypeScript - rest projects

Collapse
 
henryong92 profile image
Dumb Down Demistifying Dev • Edited

Just my two cents.

Svelte for Front-end hands down. It really deserves more attention as it really does helps when developers don't have to fight with the framework they are using and just use it with as little mental boilerplate as possible.

Fastify seems to be one of the fastest back end framework out there. Structure of Fastify is really appealing too.

TailwindCSS is one of my personal favorite CSS tool / framework out there.

Collapse
 
kieranholroyd profile image
Kieran

svelte, just an opinion, but i really like it

Collapse
 
thehanna profile image
Brian Hanna

I've recently started playing with Svelte and I think I'm in love. For my work stuff, I still go Angular because of its opinionated nature, but that may change in the future

Collapse
 
kodnificent profile image
Victor Mbamara 🇳🇬

What framework does dev.to use??

Collapse
 
cixwaregagan profile image
Gagan Rai

May be the best javscript framework was inside us all along.🤔

Collapse
 
webixui profile image
JavaScript-Webix-UI

webix.com and dhtmlx.com

Collapse
 
sirajulm profile image
Sirajul Muneer

VanillaJS

Collapse
 
pwnchaurasia profile image
Pawan Chaurasia

Vue2.
It's simple and easy to use and good.

Collapse
 
desi profile image
Desi

The one that works for the person writing it for the purpose they're writing it 😇

Collapse
 
abraham profile image
Abraham Williams

The one that makes you successful.

Collapse
 
bergermarko profile image
Marko Berger

Wars have started this way

Collapse
 
gab profile image
Gabriel Magalhães dos Santos

jQuery is the best framework, change my mind

Collapse
 
javierg profile image
Javier Guerra

The one you use

Collapse
 
mervinsv profile image
Mervin

Vanillajs from dev.to :)

Haven't seen any blogs about vanillajs from scratch to code structure to routing to ajax calls.

Maybe someone here can make a blog about it :)

Collapse
 
codingmindfully profile image
Daragh Byrne • Edited

<noscript><blink>LOL</blink></noscript>

Collapse
 
aschwin profile image
Aschwin Wesselius

I think ExtJS beats any of the frameworks so far. Yes, it's pricey but that is how they support their effort to build good solid code.

Collapse
 
dotmarn profile image
Kasim Ridwan

The best javascript framework is the one that works best for you😂😂

Collapse
 
keserwan profile image
keserwan

I love Angular.
I like react.
I am admired in svelte.
I follow vuejs news on some twitter accounts.
Yes blazor is not a js framework, but its something good coming up to compete with js frameworks.

Collapse
 
buzzedison profile image
Edison Ade

I have stayed with React. Vue is great but I think I am more comfortable in React. My vue experience is just kindda ok.

Collapse
 
eboye profile image
eboye

VueJS for SPA, jQuery for everything else

Collapse
 
brianemilius profile image
Brian Emilius

SHTML ...

...

hides

Collapse
 
kylefilegriffin profile image
Kyle Griffin

jQuery. Fight me

Collapse
 
sergix profile image
Peyton McGinnis

Oh boy. grabs popcorn

Collapse
 
kristijanfistrek profile image
KristijanFištrek

Some men just want to watch the world burn...

(it's Angular...)

Collapse
 
stephanie profile image
Stephanie Handsteiner • Edited

Who are you and what have you done to Ben? 🤣

Collapse
 
webnetweaver profile image
webnetweaver

My vote goes to angular.

Collapse
 
mehmood168 profile image
Mehmood

tbh I really like and prefer jQuery. It gives a lot of privilege and has a shorter syntax than Vanilla JS.

Collapse
 
dajma00 profile image
We Want Change

Perhaps we should leave the cacaphony of all these frameworks and move to something like Blazor. Write everything in c#.

Collapse
 
rafi993 profile image
Rafi

None :)

Collapse
 
leandroberg profile image
leandroberg

Just a jQuery user: Hey duddy, I've heard about something out there!