DEV Community

Cover image for Vue vs React: What to choose in 2021?

Vue vs React: What to choose in 2021?

Digitalya on September 10, 2021

At the start of a new web app development project, any developer would have a burning dilemma: What is the best framework for this project? While w...
Collapse
 
buphmin profile image
buphmin

Regarding use cases for vue:

Your app isn’t very complex or you need it to be extremely fast

I'm curious could you elaborate on this? While I am primarly a backend dev I have worked on complex apps in both react and vue. I would not say either has any inherent issues with application complexity, but is simply how the dev designs it. I personally find complex apps easier to follow in vue due to the nature vue internals/design, but that is just my opinion.

Collapse
 
digitalyaops profile image
Digitalya

I think it depends on the developer's preferrence and it's quite subjective. In our experience, we preffered using React for more complex applications. However, the final conclusion is up to you

Collapse
 
yairmishnayot profile image
Yair Mishnayot

As a Vue developer, I don't get the comparision with React regarding to complex apps. Vue is very capabale of building complex apps.

Collapse
 
murunwas profile image
murunwas

Svelte 😍

Collapse
 
mkvillalobos profile image
Manrike Villalobos Báez

It's the future!!!

Collapse
 
thrillyb profile image
Billy Lazzaro • Edited

I have used both professionally, and strongly preferred vue (it's more developer friendly IMO). That being said, I think it's important to note that you would have a harder time hiring fully ramped, engineers experienced in developing with vue. There is much broader support for react, so it's easier to source leads. And similarly, if you're looking for a job, having react experience would be relevant to more open roles (at least in the Boston area). I don't want to discourage anyone from choosing to use vue, but I think it's important to toss that on the pro/cons.

I also sort of think that Facebooks support of react can be a negative as well. They're going to make decisions that are best for Facebook and their teams, as opposed to the community at large?

Collapse
 
domagojvidovic profile image
Domagoj Vidovic

Why do you think that Vue.js isn’t suitable for complex apps?

Collapse
 
gktim profile image
gkTim

I also think vue is good for complex apps as good as react. Especially in v3.

Mobile Apps could also be done in vue with ionic-vue.

It all depends on personal preferences which to choose. Vue is easier to learn and has a very good documentation.

Collapse
 
oniichan profile image
yoquiale

They have barely used it

Collapse
 
hanchothar profile image
HanChoThar

Thanks for this article. I am choosing the right framework for frontend developement. Now I finally choosed react for its mature frontend framework, future proof, market trends, and maintained by facebook. I also found vue is more easier because it can use html like templates and great startup for beginners. React learning curve is higher than vue but I choosed react loll...

Collapse
 
digitalyaops profile image
Digitalya

Glad we could help!

Collapse
 
sabbirsobhani profile image
Sabbir Sobhani

I have done complex and large project with Vuejs, without any complexity. And, I haven't experienced anything like you expressed. Rather, (IMO) I have used React and I found out, it is nothing but a verbose library.

Collapse
 
offendingcommit profile image
Jonathan Irvin

I think using GitHub stars as a way to decide on a framework can be widely misleading. It makes the assumption that everyone who has "Starred" a framework or library is using it. That's not always the case.

I usually star something as a way of finding it later or just to keep up with it. Companies don't necessarily use what's "hip", they use what works with the most support.

Collapse
 
thesides profile image
Jacob Sides

I think it's just a small part of the picture and does have a slight representation of the community/interest. But anyone who actually knows what they're reading/doing isn't going to use that as an actual justification.

Collapse
 
m4heshd profile image
Mahesh Bandara Wijerathna • Edited

Articles like these must have some kind of a moderation system because this is extremely biased and could turn new developers away from great technologies like Vue. This is the same reason that created the bandwagon effect around React which ultimately gained it more popularity (like stars) mostly by beginners.

I've written extremely complex Vue applications, consists of hundreds of thousands of lines of code which are so clean, runs extremely well while being super reliable. People who haven't truly adopted Vue 3 has no true idea about how powerful it is. I have done insanely complex Vue apps (currently active in production) that acts as the entire heart and soul of huge enterprises coupled with capable backends.

Your app isn’t very complex or you need it to be extremely fast

React offers more flexibility for larger, more complex apps

I don't see any benchmarks or findings to back these claims. The gist of pretty much any similar article is "I saw big boys write about React, so I learned React first so... React is best. 🤓". Sorry If this was harsh in any way but you should really consider some external contribution from a person with proper Vue 3 experience and update this article to reflect these technologies for what they truly are.

Collapse
 
eduloper profile image
Genaro Hernández

Vue 3 es reutilizable y escalable para grandes proyectos, puedes utilizarlo con typescript o solo javascript. También el manejo de estados con vuex es muy bueno, también con vue se puede crear aplicaciones moviles y de escritorio. Si quieres SEO puedes utilizar NuxtJS, la comunidad de vue es muy grande. Creo que en varias partes minimizas a Vue.

Collapse
 
ibnujakaria profile image
Nurul Huda • Edited

In Vue, this is managed a little differently. The local state is unnecessary since you can modify the data by using the data property of the object.

Basically component data is a "local state" on vuejs just like react component state. So I don't get it why you said "local state is unnecessary".


And also, redux is not react related thing. So you should instead compare between React Context and Vue Provide / Inject.

Collapse
 
martinszeltins profile image
Martins • Edited

Use Vue if your app isn’t very complex.....

With Vue 3.0 this is not true anymore. Vue 3.0 has been specifically designed from the ground up to be able to handle large and complex applications.

Collapse
 
digitalyaops profile image
Digitalya

Thanks for the info 🙌 We'll be sure to include this next time

Collapse
 
rxliuli profile image
rxliuli

There is no doubt that it is react. I have promoted react on my last team last year, and now my team uses vue3. However, although vue3 has solved some problems, there are still more problems that have not been solved. I personally think that react is more beneficial to developers. Friendly, ecologically larger and more flexible

ref: blog.rxliuli.com/p/930763abc6ae4cf...

Collapse
 
oniichan profile image
yoquiale

I usually use the framework whose coding style suits me the best. Vue and angular are perfect for me.

Collapse
 
aviz profile image
Washington Aviz

Desenvolvendo projetos complexos de ponta a ponta com vue.js e VUE.js é espetacular de verdade! Comercialmente sei que empresas vão preferir uma biblioteca que o Facebook usa, porém os desenvolvedores não mostram o lado negativo disso. O senso de organização do Vue é surpreendente não tem como comparar em relação ao React. Pessoalmente prefiro muito mais o vue em todos os aspectos app pequenos e extremamente complexos.

Collapse
 
christiankozalla profile image
Christian Kozalla

Solidjs 🎉

Collapse
 
digitalyaops profile image
Digitalya

Thank you for sharing your experience!

This article was meant to share our own opinion and experience, which could be a little different than yours. However, we can agree on one thing: this is entirely subjective and not true for everyone

Collapse
 
thanhhung profile image
thanh hung

Great post but I don't see Nextjs. I saw many people like it.

Collapse
 
christiankozalla profile image
Christian Kozalla

Nextjs is built on React. So technically, choosing Nextjs (which is a great choice in many use cases) means choosing React.

Collapse
 
chasoft profile image
Brian Cao

I love NextJS 😎

Collapse
 
ivan_jrmc profile image
Ivan Jeremic

React <3

Collapse
 
mcombinator profile image
Mostafa Gomaa

Very nice write-up. Thanks

Collapse
 
linhtch90 profile image
Linh Truong Cong Hong

I think Vue is ready for large scale app. The following article makes sense about this.

monterail.com/blog/is-vuejs-enterp...

Collapse
 
moinulmoin profile image
Moinul Moin

Thanks, Very Imformative!

Collapse
 
mattg95 profile image
mattg95

Among the two, Vue can handle high frames rate—10 frames/second, as compared to React with 1 FPS.

Where are you getting this from? Unless I've misunderstood the claim, it's completely incorrect.