DEV Community

What is your favourite JavaScript framework?

Sai gowtham on April 22, 2018

Collapse
 
krissiegel profile image
Kris Siegel • Edited

What, no vanilla JavaScript love in here?

The DOM APIs are, yes, a bit awkward but if you structure your application well it's quite powerful and most of the times is how you can get the maximum amount of performance out of your application.

Personally I like mixing a little bit of messaging (with something like msngr.js) and straight up DOM APIs. However, if I have to work with a large team then I try to find what their strengths are and I go whatever that direction is because, sometimes, being productive is all that matters and you can make a great application in any framework.

Collapse
 
derekjhopper profile image
Derek Hopper

I've fallen in love with vanilla JavaScript the past year. With webpack and ES6, it's enjoyable.

And I love your point about team strengths. Decisions to use a specific framework can have costs that span years. It can change the whole dynamic of your team if you're not careful.

Collapse
 
julesmanson profile image
jules manson

look at my comment a few above this one.

Collapse
 
ben profile image
Ben Halpern

We're a Preact team. Can't say what my "favorite" is, but I trust the community in thinking that Vue must be great. It's so well-loved.

Elm sort of counts in this discussion and I've played with it and really like it too.

Collapse
 
sait profile image
Sai gowtham • Edited

I'm also the fan of Vue

Collapse
 
ben profile image
Ben Halpern

You did tag this post with vue 😂

Collapse
 
dmerand profile image
Donald Merand

Elm is so great! I use it whenever things get more complicated than custom mini-libraries written in Neapolitan JavaScript.

Collapse
 
renannobile profile image
Renan Lourençoni Nobile

I've been an Angular dev for over a year now and I really like. Albeit that, I'm starting to shift to/learn React, and I must say they are both great. Somethings I prefer the Angular way, and some others I would definitly choose React.

Never experienced Vue or Elm, but Elm's functional nature does intrigue me.

Collapse
 
jvanbruegge profile image
Jan van Brügge

Cycle.js. When I was looking for a new framework for a project at work, I evaluated Angular and React first. Angular had too much "magic", ie stuff that " just works" (except when it doesnt and you spend hours decifering errors and asking what you did wrong). React had a cool idea with the virtual DOM, but the execution is lacking. It never actually was "just the V in MVC". You write classes that have render and lifecycle hooks just like a normal framework. Also Redux sucks when it comes to either deep nested state or asyncc stuff.

Then I found Cycle.js. It was using the virtual DOM idea from React but better. No Components, just factories creating POJOs that are evaluated in patch. Also the stream based programming make it easy to do async logic which was nice because to add life updates via websocket, I just had to add 50 LOC and then merge the data stream of the websocket with my existing data stream from HTTP without changing the rest of the logic. Also it uses purity as advantage when testing so you have an easier time there.
Half a year later, I spoke at the first CycleConf and joined the Core Contributor team.

Collapse
 
derekjhopper profile image
Derek Hopper

I've had great joy working with Stimulus this year. It feels nice and light weight. It works seamlessly with turbolinks if that's your jazz. It pushes you to keep one set of HTML templates, adding a layer of JavaScript on top of them.

If you're already using standard Rails views, it's easy to throw Stimulus in the mix.

Collapse
 
_ergo_ profile image
Marcin Lulek • Edited

One of my favourite solutions are web components. So currently I'm using mix of Polymer and lit-html for templating. It is very performant combo, has small footprint and "is native" to browsers/DOM model.

polymer-project.org/

Collapse
 
raguay profile image
Richard Guay

Vue by far is my favorite. It really works well.

Collapse
 
raguay profile image
Richard Guay

I've changed to loving Svelte v3 the most. It is much easier to use than Vue. It also helped my projects to be super small and fast! Check it out.

Collapse
 
itachiuchiha profile image
Itachi Uchiha

I prefer Ember. Its documentation may seem difficult at first glance. The learning curve is hard, I agree.

When I made my first project with Ember I felt pain. Because it was just getting data from Github thanks to API.

Vue doesn't support Model system such as Ember. Anyway, I built my project with minify options I was shocked. Because although only one component, although there is no another library but output size 70kb?

Why? I don't have any idea. But nevertheless, I love Ember. My favorite framework is Ember.

I used Vue, Angular and React in my work projects. I didn't use Ember my work projects. I was scared. Because our projects are very large.

Collapse
 
aodev profile image
AoDev

I use React + mobx. My favourite combination to build frontend apps.

That said, I am more interested in the philosophy that Sapper (Svelte) has taken to solve frontend problems. I am not using them yet but I follow the projects with great interest. "The magical disappearing UI framework", it's just that cool :)

Collapse
 
armand1m profile image
Armando Magalhães

I've worked with angular 1, and angular 2 in the past, but since the end of 2016 I shifted to React and nowadays I make it my choice for personal and professional project, always.

The first thing that makes me enjoy React is that it is not a framework, but a library, so it gives me freedom to choose the other pieces of my application without opinionated matters.

Also, I like the functional nature of React and how it makes simple to compose functionality.

I recently even made an example showing how we can use react, stateless components, a state container solution and higher order components to make a controllable walking cat: codesandbox.io/s/github/armand1m/w...

But yea, Vue is gaining attention, and today I've even tweaked a little bit with Vue + JSX. Still, I have no idea of when I'm gonna shift from React, but as it's history has been until now, I would expect React to become some kind of pattern instead of dying actually.

Collapse
 
nagarjun profile image
Nagarjun Palavalli

I've written very large apps with Ember and Vue. Vue is just clean, simple and gets the job done without a lot of fuss. I vote Vue!

Collapse
 
sait profile image
Sai gowtham

yeah Vue is very neat and clean

Collapse
 
loilo profile image
Florian Reuschel

I love and mostly use Vue.
The main reason is its documentation and kind of monolithic approach.

It was in 2016 when I decided I had to pick up an MV* framework for regular usage. I had tried out Angular.js some years earlier but never gotten productive with it.

I tried most major and some minor players, roughly in that order: Aurelia, Angular 2 (in beta back then), React and, at last, Vue.

The reason I stuck with Vue is that it was the first framework I didn't hit a brick wall with after a few hours of learning.

This was due to two main reasons:

  • The really comprehensive documentation guides through virtually everything you may need to know about the framework. After reading it, you know everything to start with a real app. It also is structured very well, with every chapter building on top of the previous one.
  • Maybe even more important: You get everything right in the Vue framework, basic state management and great support for animations in particular. That may not sound like that big of a deal, but for a newcomer in the framework space, it's a total game changer not having to search for, evaluate and weigh various React state management/animation/routing libraries against each other. Even though I liked JSX and its functional purity, the approachability of Vue simply won over it.

That being said, now that I've collected a bunch of experience with Vue and MV* in general, I'd probably be happy with something like React as well.

Also, everything I mentioned above is state of the art from two years ago. While I haven't looked deeply into other frameworks since then, I've heard of especially documentation having improved greatly for various frameworks.

Collapse
 
rrackiewicz profile image
rrackiewicz

I fell in love with Vue the same way I fell in love with Ruby. Simple and allowed me to get up and running FAST. Then I went back to React and gnashed my teeth, but over time I realized that React made me a better (functional) Javascript developer. This is a tale of How I Learned to Stop Worrying and Love React.

Collapse
 
weirdmayo profile image
Daniel Mayovsky

Mithril.js without a doubt.
Incredibly powerful framework for creating interfaces. If anyone has never heard of it, they should definitely try it out. I was amazed when I first saw it and fell in love forever.
It is very light, faster than React, and way more suited for Functional programming than popular frameworks out there.
It allows a lot of freedom as to how you want to structure your app and is very forgiving to any of your habits of programming in Vanilla.
Anyone going from Vanilla to Mithril.js will just fall in love immediately. Anyone going from React might be confused at first, but amazed later.

Collapse
 
wolfhoundjesse profile image
Jesse M. Holmes

This sounds fun, and I’m going to give it a try this weekend.

Collapse
 
wolfhoundjesse profile image
Jesse M. Holmes

Wow, there is so much love for Vue! I’m going to play with that and Mithril this weekend.

It’s unfair for me to say that Angular is my favorite. We’ve been codemates for a solid three years now, and I’ve suffered every breaking change with an air of optimism. When the CLI finally got good … and it is good … it was so easy to stop thinking about webpack and versions and all the noise.

It’s such a biased opinion, and I’m falling for React right now. 😉

Collapse
 
julesmanson profile image
jules manson

My favorite framework is Vanilla JavaScript. It has almost every tool every novice needs to start coding simple website or expert requires for building mobile-first responsive/accessible sophisticated client-side or server apps. Compilers and compacting desktop applications are even built with this. It is almost zero weight and it is always being updated.

Collapse
 
matheus profile image
Matheus Calegaro

I've tried Angular, but the constant breaking updates and major versions made me lose interest on it.
I've also tried React so many times, but I could not understant it very well on the beginning (but it now finally "clicked" on my mind).
The first time I saw Vue was in Laravel and I thought "Why?" but now i just fell in love for it and is what I'm currently learning.

Collapse
 
chiangs profile image
Stephen Chiang

It depends on the application and scale in my opinion.

For large, complex enterprise-level solutions, Angular is my choice, preferably v4+.

For other stuff I really enjoy typescript. I've given react a few tries here and there, and I like it as well, but haven't worked with it as often.

Collapse
 
napoleon039 profile image
Nihar Raote

My favorite framework is the one I started with - Vue. It's amazing, easy to learn and easy to integrate in existing projects. The way it quietly handles events and other stuff, without bogging us down is awesome. I'm not saying the other frameworks are worse, but I think Vue is a bit more subtle.

My new favorite thing is using Vanilla JavaScript for the majority of the code and sprinkling Vue over it to handle reactivity 😏

Collapse
 
vijaykhatri96 profile image
Vijay Singh Khatri • Edited

I agree with @ben Halpern, Nobody can't say that which is the best javascript framework, Every person has their own perspectives. I go the best tutorials from here: hackr.io/tutorials/learn-javascript

Collapse
 
f5buddydotcom profile image
Shruchi Nagar

There is nothing like favourite when you are creating one of the best security apps for your business. JavaScript frameworks have now become one of the most preferred web app development platforms for modern single-page apps. Here's a complete list of the best JavaScript frameworks to use in 2019, based on popularity to facilitate web application development.

Collapse
 
gluons profile image
Saran Tanpituckpong

I love Vue.js.

Collapse
 
kheme profile image
Okiemute Omuta

I guess I'm the only one using jQuery? Or that doesn't count?

Collapse
 
ivanovyordan profile image
Yordan Ivanov

I really like Vanilla JS. People tend to forget there are a lot of features backed by the language and prefer to use external packages for everything.

Collapse
 
sait profile image
Sai gowtham

Yeay But JavaScript is not a framework it's a language

Collapse
 
yakovmeister profile image
the furious dev

it was for the meme bruh.

Collapse
 
caseycole589 profile image
Casey Cole

Polymer and web components make things super simple, preact would be a close second just cause it has the ability to easily add web components also.

Collapse
 
briankephart profile image
Brian Kephart

I'm a Rails dev, and typing this.props.state makes me rage-y. The combination of vanilla JS, Rails UJS, and Stimulus is my go-to for basic JS.

Collapse
 
31547 profile image
31547

whatever works for the job. usually i just go with vanilla es7+ if i can but if im working on something facing the outside world then i would go with react, angular, vue, or something that everybody knows

Collapse
 
thechrisjasper profile image
Chris Jasper

I really like Aurelia for it's conventions approach and it allows me to still write JS. It probably has the fewest "gotchas" of any framework I've used. I also like React for certain projects.

Collapse
 
lauragift21 profile image
Gift Egwuenu

Vue has my heart.

Collapse
 
sait profile image
Sai gowtham

Yeah vue is very comfortable and easy to start and no complex things

Collapse
 
ryands17 profile image
Ryan Dsouza

React! I love how the API has evolved and with the advent of Hooks, there's a whole new way of writing components. Also their backward compatibility is second to none.

Collapse
 
skatkov profile image
Stanislav(Stas) Katkov

I pick libraries over frameworks. Usually it's vanilla js with smallest libraries that solve the problem.

Collapse
 
chiangs profile image
Stephen Chiang

Angular then react

Collapse
 
sam_ferree profile image
Sam Ferree

Can I say Blazor? It's not JavaScript, but it's a browser-client framework that compiles to WASM.

Collapse
 
guidovizoso profile image
Guido Vizoso

If you count React as a library I'd say Vue, but the versatility React gives you is what make it my favourite.

Collapse
 
tomhermans profile image
tom hermans

Worked with Angular1 before, now started a course Angular-cli to refresh and update. And took a few glances at Vue. Not into React tbh..

Collapse
 
henrique_horbovyi profile image
Henrique Horbovyi

I've bee working w/ Angular and I'm enjoying it, but I like Vue too (it's simple)

Collapse
 
steveblue profile image
Stephen Belovarich

Angular is my favorite because it can produce highly optimized bundles and scale incredibly well. I like that it also has patterns for common tasks like form validation and making http requests.

Collapse
 
zilurrane profile image
Zilu Ramkrishna Rane

React with Redux😘

Collapse
 
conblem profile image
Wehrli • Edited

I have been playing arround with Hyperapp recently and I've been loving it. It's like Elm without the lang.

Collapse
 
thobyv profile image
Thoby V ijishakin

Yeah Hyperapp is very cool

Collapse
 
tiffany profile image
tiff

Tried a bit of Angular and while it is nice, React fits me.

Collapse
 
arnavvats profile image
arnavvats

I love Angular as it gives me a full stable setup to work on. Sure it has its own cons though.

Collapse
 
kolyaio profile image
Nikolai Ilushko

I prefer vue because of its clean design and simplicity.

Collapse
 
sait profile image
Sai gowtham

Yeah it is easy to start

Collapse
 
rhymes profile image
rhymes

Vue, but I've only tried Vue :-D (if you don't count jQuery and ExtJS)

It's simple, the documentation is great, it scales up and it resonates with my brain.

Collapse
 
windson profile image
windy

reactjs and Sail.js MVC framework. LOVE it!

Collapse
 
irvandoval profile image
Irvin Sandoval

I prefer Angular rather than React when the project is small or medium size. React (redux, sagas, etc) for large size projects It's ok for me.