Vue.js vs React: Who’s one step ahead? [POLL]
Remember when the “battle” was between Angular and React? That’s no longer the case. These days, you’re either on Vue.js’ side or you’re a React fan.
First things first: Vue.js is a framework and React is a library so why are we comparing apples with oranges? It’s a tale as old as time, but with different actors. Remember when the “battle” was between Angular and React? That’s no longer the case. These days, you’re either on Vue.js’ side or you’re a React fan.
And according to a fun GitHub repo, Vue.js has more stars than React. Check it out here. However, just because Vue.js has more stars, this doesn’t mean it has won the war. On the contrary, it has just begun.
Why is React on everyone’s lips these days?
Laurie Voss: As with any popular phenomenon, it’s hard to pinpoint a single cause, and a combination of factors have combined to fuel React’s growth.
First, it is a neat and effective solution to an extremely hard problem: making modular front-end components that are portable, reusable, and interactive. They were not the first and not the only solution to that problem, but the ergonomics for developers are arguably better.
Second, having the backing and considerable marketing might of Facebook behind it has given it an audience few frameworks can match, and the fact that Facebook uses it and supports it gives a lot of devs confidence that it’s something they can invest in.
But of course, the underlying cause behind both of these is the continued march of web applications to ever greater levels of richness and usability, which drives complexity behind the scenes. React helps manage that complexity while allowing teams to keep up with the pace of work demanded of them.
Can Vue overtake Angular in 2018? What fueled its unexpected popularity?
Laurie Voss: From my perspective, there are two factors driving Vue’s growth. First, lots of developers still want a “soup to nuts” framework, i.e. one that does everything from routing to templating to back-end data fetching. Vue does this, which tends to make it easier for a first-time developer to pick up since they just make one choice: use Vue, and all the other choices are made for them.
React, on the other hand, requires making lots of additional choices about routing and data management libraries, which makes it more intimidating and slower to get started with. So Angular, Ember and Vue all have this “all-inclusive” advantage over React.
Second, if you’ve decided you want an all-inclusive framework, Vue performs better in benchmarks and is relatively easier to learn. Although these things are subjective, devs often report that it feels “cleaner” or “simpler” than older frameworks like Angular and Ember.
Read the full interview here.
React: A marketable skill
HackerRank’s 2018 Developer Skills Report is packed with goodies: it points out the most in-demand skills and qualifications, the most used languages and frameworks and other interesting things. However, we’re interested in the huge gap between developers’ skills and what employers want from them.
One such example is React, which has the biggest gap between the number of developers who know the framework and the number of employers who look for candidates with this skillset. The bottom line is that React (as well as AngularJS and Node.js) is a marketable skill so if you’re not sure what to learn this year, you might want to give it a try.
Read more about the most marketable skills here.
The most popular projects (a.k.a. the hottest projects of the year) are:
- Create React App
Vue.js is not only the most popular project [with more than 40,000 stars added on GitHub during the year] but also the most popular UI framework — yes, it managed to outshine them all, including all-time favorite Angular and React. Before you say anything about the framework/library mix-up, let’s hear them out:
Are you thinking of giving Vue.js a try? If the answer is yes, you should give this article a chance: Luis Elizondo weighs in on the struggle of considering a new framework and reveals what happened after Rever decided to rewrite their web client using Vue.js.