DEV Community

loading...
Cover image for React vs. Angular vs. Vue. What will be the best JavaScript framework in 2021?

React vs. Angular vs. Vue. What will be the best JavaScript framework in 2021?

marveluck profile image Mateusz Leciejewski ・2 min read

The world of the front end is dominated by 3 technologies - Angular, React, and Vue. Increasingly, however, there is talk of a triumphant return of plain JavaScript (a.k.a "Vanilla JavaScript").

This can be seen for example in the Bootstrap approach, which in version 5 dropped jQuery and announced the migration to pure JavaScript.

However, this does not make it any easier to choose between the available options and the competition between technologies and their supporters (who are often more like fanatics) sometimes takes the form of a real war.

Alt Text

Watching these tribal battles, one gets the impression that the most important question any programmer has to answer is:

What technology is the best?

Contrary to appearances, the answer to this question is extremely simple:

There is no such thing as "best technology"

Why? Because all of the above options are great and any of them can help you create a fantastic project.

Both Angular, React, Vue and pure JavaScript are very mature and stable technologies, with huge and active communities. Each of them provides all the necessary tools and support needed in modern web development.

Therefore, the question you should ask is:

Which solution will be the most reasonable for me, with the project I am working on and with my resources?

Much better.

Where to start?

Now let's leave these very general questions and get down to business.

Typically, technologies are judged in such categories as:

  • popularity
  • job market demand
  • community and development
  • performance
  • flexibility
  • maturity
  • tooling

But let's be honest - each of the technologies mentioned in this article performs very well in all of these categories.

However, there is one thing where these technologies differ significantly from each other and that is crucial when choosing first:

Learning curve

Why is this issue crucial?

Because if you are already a seasoned developer technology is of secondary importance to you. With appropriately advanced skills, you are able to create a high-quality project and solve any problem, regardless of whether you work in Angular, React, Vue or plain JavaScript.

However, the problem is how to get to that level. And that is why the learning curve is crucial because it determines how efficiently our technology learning progresses.

Assume the following scenarios:

You are a beginner without knowing the basics of web development
You already know HTML, CSS, and the basics of plain JavaScript
You already know Bootstrap well, and you have at least an intermediate level of knowledge of plain JavaScript
You are a seasoned developer with advanced knowledge of JavaScript
Now let's consider them step by step.

Check out the full comparison πŸ‘‡
https://mdbootstrap.com/docs/technology-comparison/

Discussion

pic
Editor guide
Collapse
madza profile image
Madza

I'm excited to see how Svelte evolves in the near future... πŸ‘€

Collapse
bytebodger profile image
Adam Nathaniel Davis

Completely tangential to your article, but I love the use of Azgaar's for the map! I use that tool all the time for my fantasy / writing / worldbuilding stuff.

Collapse
jwp profile image
John Peters

Excellent article Mateusz! Thanks.

Collapse
andrewbaisden profile image
Andrew Baisden

I think Svelte will grow in popularity in 2021. The big 3 will hold onto their leads though as they are more established.