It’s been a while since we published our article about the frameworks that conquered the JS world in 2019. The time has come for an update and there are some interesting insights to come. Even though we don’t see a lot of major changes—and Angular, React, and Vue.js have certainly retained their places at the top table—it is worth looking at how the landscape now looks and talking more about some of our previous strong hunches like Svelte. 

First things first, one thing has definitely stayed the same: JavaScript remains the most popular programming language in the world. Due to the overall trend of moving backend developers into the frontend and the shift from server-side to client-side web applications, there is little trace of the old antipathy towards this language, just like there is no trace of its former rivals (R.I.P Flash). 

JavaScript is used as a client-side programming language by 95.1% of all websites.

W3Techs

The framework boom, which happened some time ago, turned the tables and set JavaScript at the center of the developer’s interests and revealed its real potential.

So let’s go back to the frameworks.

The Top 10 JavaScript frameworks remain unchanged… for now 

A year ago, we were a little cautious about Svelte, even avoiding calling it a framework. Svelte looked more like a compiler to us, but—no matter the proper terminology—we couldn’t ignore the advantages it brings. By reducing the amount of code, Svelte enables developers to write components using just HTML, CSS, JavaScript and, while building, it compiles them into small JavaScript modules. In 2019, it was a unique approach and Svelte was just beginning to gain wider recognition. However, we noted that, as it eases building fast-loading apps, it might one day defeat React, Angular, or even Vue. That day may not have come for now but Svelte is definitely on a good track. According to the Stackoverflow survey, 44,9% of developers have “heard of it and would like to learn it”.

No wonder, since web performance is becoming more and more important with particular regard to reaching out to users in countries with no advances in traditional internet infrastructure. In Europe, we may not see this problem, but today’s web pages can be problematic for people with sluggish connections or with small data plans. 

Svelte has the potential to become the answer to that challenge. Web developer Shawn Wang confirmed that he was able to reduce the size of his personal website from 187 kilobytes to 9 kilobytes just by switching from React to Svelte,  according to WIRED. That is why, even though Svelte is a new kid on the block, it has already managed to win some respect. Traditional frameworks do their job directly in the browser, Svelte shifts it into a compile step that happens while building the app. Thanks to this innovative but simple approach, it can beat Angular, React, and Vue for performance. 

Svelte is perceived as a tool for building rather small applications; the “Holy Trinity”—as we referred to Angular, React, and Vue.js— are still the ones that developers say better suit larger projects, and the other platforms on our list also enjoy the support of larger, solid fan bases than Svelte currently attracts.

However, the latter of these has already proved that, in the JS world, nothing is set in stone. Who knows… maybe Svelte will change the status quo?

JavaScript frameworks in 2020

React

React has gained a very strong position, which should come as no surprise since it is the framework backed by Facebook itself. In the fast-changing JS world, that kind of support cannot be overrated. However, it is hardly the only advantage of React. The framework is perceived as one of the most flexible on the market, and no wonder since technically it is more of a library than a framework, though the robust ecosystem built around React makes it work like a fully functioning framework. JavaScript developers love it because it allows them to use the JS code instead of a framework-specific one. All of it makes React fast and easy to learn, especially compared to Angular. 

Its main technological advantage is, however, a virtual DOM implementation. It was a huge time-saver, thanks to which React gained the favor of developers who are always looking for ways to speed up their own work. The virtual DOM is a React’s local copy of HTML DOM which, by locally comparing elements, allows users to render only actually changed components and, in effect, avoid many unnecessary operations.

React is obviously the framework chosen by Facebook, but it can also boast Netflix, Microsoft, Dropbox, Asana, Yahoo, Codecademy, Airbnb, and Slack. The exceptionally active community gathered around React makes its learning curve relatively encouraging to newbies, in spite of the fact that mixing visual elements with logic (and that is how JSX works) may be a bit confusing. Where there are many solutions to one problem, it is sometimes difficult to choose the best one, but this is what comes with the flexibility.

Angular

Angular, on the other hand, seems to be entrenching itself in the position of the framework suitable for the enterprise projects. Again, the support of Google is not insignificant here and makes it evident that Angular is not going anywhere. However, the popularity of this tool seems to have reached some kind of plateau, which is understandable since Angular is not the easiest framework to get to know.

Angular is the most demanding of the big three; it is a full-blown framework, which provides everything needed (and more) by itself, cutting out the necessity to rely on any third-party libraries. However, to make everything work, the implementation needs to be done in an Angular-specific way. It means Angular forces users to maintain the same patterns. On one hand, this guarantees good quality code; on the other, it limits the flexibility. 

The main technical difference between Angular and React or Vue involves the usage of Typescript along with HTML and CSS. For those developers who are not fans of Java (TypeScript’s syntax is quite similar to Java’s), this may be a challenge. 

The community of Angular is broad but—since many Angular-based projects are run for enterprises that require NDAs—members are not always as keen to share their know-how. 

Vue.js

Vue.js has skyrocketed in recent years even though it has no support from any major companies, unlike its competitors. This ultra-light framework is constantly mindful of not giving any ground to either React or Angular and has managed to find itself in an interesting position in this triumvirate. It is true that the enterprises may be distrustful when it comes to open-source technologies—because living freely sometimes means dying unexpectedly. Yet the Vue.js case seems to be very different thanks to solid community support and a detailed road map. At least, behemoths such as Alibaba, Baidu, and Tencent have been convinced. 

The core benefit of Vue is, however, its lightness. It is tiny by itself and fits perfectly for building both single-page applications and more complex implementations. Internal elements can be integrated into the infrastructure with no harm to performance and—since it is becoming a core challenge for the companies aiming to conquer the mobile world—Vue’s position seems to be unthreatened for now.

Vue is perceived as easiest to learn and most comfortable to use. It allows web developers to separate HTML, CSS, and JavaScript; for many of them, it is a more natural way of building web apps than using, for example, JSX required by React. It also significantly flattens the learning curve for the beginners, making the technology more accessible. 

Discover Vue Storefront the best PWA storefront for your eCommerce >

Ember.js

Ember.js is a full-featured framework often compared with Angular. One of its most significant advantages is comprehensible best practices that allow developers to focus more on creating unique functionalities, rather than writing predictable and tedious code. That, in fact, was the main founding idea of Ember: it was supposed to boost developers’ productivity.

Node.js

Node.js is not JUST a JS framework. It is more like an entire server-side JavaScript run-time environment (for a lack of more succinct term!). Node.js allows developers to use a single programming language for server-side and client-side scripts, which makes it the most well-known representative of the “JavaScript everywhere” paradigm. It is used by GoDaddy, Groupon, IBM, LinkedIn, Microsoft, Netflix, PayPal, and many more.

Polymer

Polymer, used by YouTube, Google Earth, Electronics Arts, Coca-Cola, McDonald’s, and General Electric, is more a JavaScript library than a full-stack JS framework. It is developed by Google and used to create the elements of the website without working on a very complex level.

Aurelia

Aurelia is a JS framework that allows using vanilla JavaScript or TypeScript and puts application code at the center of interest, without enforcing framework-specific paradigms. In general, its core advantage is based on being as transparent as possible for developers; yet it is also perceived as one of the fastest-rendering frameworks and, more importantly, its architecture ensures that it can be used for client-side and server-side at the same time.

Backbone.js

Backbone.js, created by Jeremy Ashkenas who is also known for CoffeeScript, is one of the most well-known JavaScript frameworks. Easy to use and quick to learn, it has a strong and loyal fanbase. Backbone.js was built using the RESTful JSON interface and is based on the Model-View-Presenter (MVP) pattern.

Mithril

Mithril is a UI JS framework that is mainly used for developing single-page applications. It is small (< 8kb gzip), easy to implement, fast, and provides routing and XHR utilities out of the box. This framework might be a good option for those who like working with React as it has a few similar features.

Mithril is used by Vimeo, Nike, Fitbit, and open-source platforms like Lichess or Flarum.

Meteor

Meteor was considered a game-changer some time ago but has not entirely lived up to the hopes and its popularity is fading. That being said, it has a lot to offer. It is easy to learn, flexible, and quick to build with. For those developers who are looking for a tool to build real-time applications, it may be the best shot. 


The First VueJS UI library dedicated to eCommerce. Start using>


Kaja Grzybowska

An experienced journalist writing for Wyborcza.biz, biznes.onet.pl, NewConnect.info and Inwestycje.pl. Previously was a managing editor of Interaktywnie.com, a website dedicated to technology, advertising, digital media and economy.

Share your comment