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 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.
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.