Alida Arteaga, Regional Coordinator

3 March 2021

Most Popular Front-End JavaScript Frameworks in 2021

The essential front-end development tools are HTML, CSS, JavaScript. Most modern web solutions, however, utilize a JavaScript framework that adds extra features and performance improvements. Here are the most popular ones.

React

React, even if technically a library and not a framework, has been the darling of front-end development for almost a decade. It was originally released by Facebook in 2015, but the company has not been hoarding the tech for itself. React is supported by a huge developer community thanks to the open-source distribution model.

The time it takes to load anything on Facebook may suggest otherwise, but React is a very fast framework. It avoids potential bottlenecks in the code through reconciliation, where the possibly imperfect Document Object Model is synced with the optimal Virtual Document Object Model running in parallel. Other React advantages include high reusability of the code, smart user interaction logic (only blocks that need updating are updated, not the whole page), and strong cross-platform portability. If you want to port an iOS app to Android or vice versa, you’ve already done 90% of the work.

React is at the forefront of the single-page application era, where users only have to load the full page once. The application (or a webpage) then simply feeds new modules or replaces them and automatically updates the url that remains invisible to the user. It may sound like a disaster for Search Engine Optimization, but fear not: you can always make HTML mirrors of the pages if nothing else. 

Angular

The original AngularJS framework was released in 2010 and quickly became a top choice for front-end development with Javascript. Much like with React, Google made the framework open-source while improving it themselves. Technically speaking, AngularJS was superseded by Angular v2, which was released in 2016. This is the framework modern sources refer to, even if the text simply says Angular.

Angular is pretty fast, although it remains competitive with React differently. The framework does not utilize virtual DOM for reconciliation but rather makes the real object model respond only to required changes. React may seem slowed in that regard (the virtual object model is re-rendered for every state change), but the finer aspects of both solutions make them almost equally fast. For example, Angular is a self-sufficient framework while React needs external libraries to power a solution.

 

Despite the similar performance, React and Angular are very different in how you achieve it. Being a full-fledged framework rather than a library, Angular has a much higher skill floor. You need to grasp the Model-view-controller pattern and learn the Typescript programming language to be a capable Angular developer. The entry barrier is much higher but the investment is worth your while. Picking up Angular is a path to learning the whole MEAN stack (MongoDB, Express.js, Angular, Node.js), which will make you a full-stack developer all off Javascript and Javascript-based tools. 

Vue.js

Vue.js is another open-source front-end Javascript framework, but this time not backed by a tech giant. It was released in 2014 by a former Google engineer Evan You, who wanted to take the good things about Angular and wrap them in an even lighter package. A regular Vue 3 build is only 13.5 kb, and adding all modules would only increase the size to roughly 22.5 kb. With the latest version not bringing a size reduction, React is sitting at 97.5 kb while Angular is just above 100 kb.

In fact, Vue.js makes the most out of key features from React (and its derivatives) as well. For example, the framework uses VDOM to achieve fast load time over Angular’s change check approach. Single-page applications benefit from server-side rendering first popularized by Next.js. Architecture-wise, both Vue.js and React rely on external libraries to get routing and global stage management done. The learning curve of Vue.js is much closer to that of React, not Angular.

The biggest issue with Vue.js is development constraints. There are only so many features an independent group of developers can implement, especially with the core principle of keeping things light. As for third-party contributors, React has several hundred plugins more than Vue.js does. It’s worth mentioning here that the community is fragmented, as Vue.js has been extremely popular in China with Xiaomi adopting it among others. Still, if you are building a project that doesn’t need all the bells and whistles of React or Angular, Vue.js is worth a try. Even a negligible increase in speed becomes much more prominent on 120 Hz mobile screens.