Np. Ofcourse it has to be taken with a grain of salt. React will remain very popular, but I think Vue and other atm less popular non virtual dom view layers will make their way in/back or continue to rise. Interesting read (as shared by @alawi):
What I’ve faced by switching from Blaze to React (I had to unfortunately) was that I suddenly had to do a LOT of stuff myself. Stuff that Blaze did for me for free… React recently updated its API to suppert hooks. Last thing I remember about Blaze was this beauty:
Template.someTemplateName.helpers({
someVarFromHook() {
return Session.get('someVarThatWasSetSomewhereElse');
}
});
It does exactly the same and is much simpler. The only downside was that if you did not come up with proper names, it was not always clear from where the updates originated.
React was the first
An independent view layer that can be build in a SOLID way and that makes in-efficiencies ‘forgivable’ by providing a virtual dom. React was the first view layer that actually achieved that. At least, the first marketed one. (I’m not aware of any earlier ones at least). Later that time Angular (the biggest and most popular at that moment) broke with its V1 version, upsetting the community, making a lot of developers switch to the new kid that already gained a huge momentum.
Angular did recover and is now on solid ground again. Its actually used in huge companies and for a reason. Its a framework. Highly opinionated and if you like typescript and observables, you might like Angular too.
Developers like freedom. Most developers became software developer, because only time and their creativity was the limit. That’s why a lot of developers tend to stick with React atm. Though you have to do a lot of things for yourself, its exactly this freedom that makes it popular.
Vue arrived on the scene
Vue has only just arrived on the scene. For 2 years now it has been steadily rising, but in usage its no where near React or Angular. Did it come too late? Companies in the European and American regions have mostly adopted Angular and React already. However, there is something interesting going on. Though usage is relatively low, the number of github stars is higher then both Angular and React!! What is going on here? Here’s the stats from Github at time of writing:
- React: 118.942 stars
- Angular: 43.993
- Vue: 123.879
If it works why change it?
You see. Companies have a different mindset. Like I mentioned in another thread: “Business people have a different mindset then developers”. In this case, its about reducing risk. Since a lot of companies were using AngularJS (v1) and were happy with it, why now not use Angular (newer versions)?
“Most of the developers in my company are Angular developers so it’s safe to continue using it.”.
Developers love Vue
If you ask developers that have tried Vue. Almost no one will reply that they have anything against it. They either like it or don’t hate it. Angular is hated by some, adored by some and most people have a love hate relationship with it. React is in a better position. Developers love it, but face a high learning curve, because of its JSX syntax and Javascript everything approach. What does not help either is that documentation is scattered everywhere.
In contrast, Vue’s docs are well designed. Its ecosystem of libraries are “plug and play” and consistently documented. It even has a style guide! Vue has a very involved and active community of Passionate People. It has a much more complete and better documented rendering framework - NuxtJS then React’s NextJS. The team is the most ‘agile’ team I know of, because of its open source and I can do what is most valuable mentality. (Thank you @akryum for your integration packages with Meteor). I did not mention the CLI tools.
Vue has been rewritten from the ground up ~2 (almost 3) times. When React came up with Hooks, @evanyou came a few days later with “I’ve played around with it” and now its a thing.
Not there yet, but the trend is clear
This illustrates just how fast VueJS development goes. Developers love it and companies are starting to love it. If you look at the trends from top down, you might not notice it. React and Angular are simply still too big in numbers, but bottom up, you can see that the developers love it. The community is thriving and contributing and it will continue to do so in the next years.
conclusion
React remains strong, but a couple of its biggest advantages over other tools are disappearing. VDOM, component based, state management, jsx. They all are already being replaced or abstracted away by webcomponents, non vdom frameworks and templates like that of Vue’s.
Its a big sign. Microsoft Windows was defacto, until Apple released a shiny macbook that worked really nice with its operating system OSX and its mobile equivalent on the iphone. A bit like how vue works really well with the rest of the ecosystem.