DEV Community

Cover image for The best front-end framework to learn in 2019
Duomly
Duomly

Posted on • Updated on • Originally published at blog.duomly.com

The best front-end framework to learn in 2019

This article was originally published at: https://www.blog.duomly.com/which-front-end-framework-is-the-best-in-2019

Frameworks are a very powerful tool in the development of modern web and mobile applications. Just think about sites and apps like Facebook, Netflix, and Instagram for example. It’s exactly frameworks that are responsible for their uninterrupted operation by providing and giving their users a complete experience.

We can define a framework, most simply, as a large number of pre-built components which give developers the ability to expand and customize them depending on the application they make. Most frameworks have source language JavaScript.

Bearing in mind, above all, the continuous technological development, the needs of the users of the web and mobile applications, and the tendency of the front-end developers to enable them, the topic of this article is the most popular framework. In this article, I analyze the six best frameworks according to their performances and popularity.

1. React.js

React is a JavaScript component-based library with JSX syntax.

Facebook software engineer Jordan Walke created the prototype for React in response to common problems in the work of the Facebook app caused by an expansion of the network. Officially, its first application by Facebook gets in 2011 and two years after that, 2013, it becomes an open-source library.

The main characteristic of React is a virtual DOM, but necessary to mention that it is 1-way data binding. Thanks to the virtual DOM characteristic, React is characterized by exceptional performance.

From the aspect of the level of difficulty, React is one of the easiest to learn, especially compared to Angular.

Where is it used?

React focuses on building a UI of a single page web app (SAP) and mobile app. Since React is a library, it is necessary to include several other libraries for the development of more complex applications, from which I would specify Redux and React Router. Also, React Native is an additional platform for building high-quality iOS and Android App.

Known for its high-performance, React has proved extremely demanding for applications that require dynamics, often upgrades and updates. That’s enough to say about React because Instagram implemented it after Facebook.

How popular it is?

When it comes to React’s popularity, I will look at GitHub statistics. According to current data, it has 122,529 stars, and in the past year, the average growth of stars per day is 93.
This library became popular and widely accepted in a relatively short time. For sure it represents a trend and, the community is rapidly growing.

Big projects/companies that use?

Except for the company I mentioned before, React is the choice of Netflix, New York Times, Yahoo! Mail, Vivaldi Browser, Dropbox, PayPal, Pinterest, Timber, Uber, and many other apps.

Pros
  • Maintained by Facebook,
  • The community is constantly evolving,
  • Virtual DOM,
  • Hight performance,
  • Suitable for applications with high traffic,
  • Often updated,
Cons

-Not SEO friendly,
-Needs other libraries to build more complex applications,

Duomly - programming online courses

2. Angular

Extremely popular framework Angular is the only one on this list whose source language is TypeScript.

The Google team developed it to upgrade the earlier version of AngularJS. In the focus of development, on the one hand, there was the fulfillment of modern demands, talking about technology, and, on the other hand, the tendency to combine the concepts that best showed in practice. With this framework, the Google team has undoubtedly set standards in this sphere. They published the first version of Angular (v2) in 2016. Before that, in 2014 and 2015 were released alpha and beta.

Angular is a component-based framework, but unlike React, it is a 2-way data binding.

Learning Angular is difficult although the documentation and community are very numerous. The documentation is even more confusing, especially for beginners.

Where is it used?

Angular is used to develop web and mobile apps. In addition to the standard use of a single page app with the proper library, like for example Universal, it is possible to create a multi-page app. As regards mobile applications, they committed Google to give users with an exceptional Ionic platform focused on the development of the Native app and Progressive Web Applications.

How popular is it?

At GitHub Angular, there are 45,376 stars at the moment, and in the past year, the average number of stars per day is 33. An interesting fact is that the number of stars is falling in comparison with the React that is growing. Angular has been extremely popular in the programming community for many years and now has the largest one.

Big projects/companies that use it?

Apart from Google, Angular also uses Microsoft Office Home, Forbes, Blender Video, Xbox, Santander Bank, and BMW.

Pros
  • Strong community,
  • 2-way data binding,
  • Simple single page app,
  • Shadow DOM,
  • Typescript,
Cons
  • Complex and not easy to learn,
  • Must learn Typescript,

Duomly - programming online courses

3. AngularJS

AngularJS comes from the earlier described Angular which source language is JavaScript. So, AngularJS is the first version that was developed by two exceptional developers Misko Hevery and Adam Abrons, published in 2009. With its appearance, AngularJS quickly gained popularity in professional web development. This framework is a 2-way data binding.

The fundamental difference between this framework and the earlier one is for sure in the source language, but also in the characteristics and purposes. They did not base AngularJS on today’s concept of a modern framework but are undoubtedly responsible for the development of the same, Angular.

Also, AngularJS has an MVC (Model – View – Controller) architecture.

Where is it used?

AngularJS is primarily designed to build dynamic web applications. Suitable for single-page applications. However, it does not support the construe of mobile apps as its successor.

How popular is it?

This framework has a total of 59,379 stars on GitHub. The annual average falls so that the star rating per day is about 3.7. It is a standard case of circumstance if we consider the appearance of Angular, which is a significantly improved version.

Big projects/companies that use it?

Some of the companies, or sites, that are built with AngularJS are Google Gmail, Upwork, The Guardian, HBO, Sony, General Motors, Weather.

Pros
  • JavaScript friendly compared to Angular
  • 2-way data binding,
  • Fast development,
  • Highly testable applications
Cons
  • Difficult to learn,
  • Old version,
  • Low popularity,

Duomly - programming online courses

4. Vue.js

Another framework that has gained immense popularity lately is Vue.js. Vue does not have the support of large companies, unlike the previous ones, and was developed by Evan You, the man who took part in the development of AngularJS. First launched in 2014.

Vue is a component-based and visual DOM, which makes it very fast. Another important feature is that it has a significantly smaller size, compared to React and Angular. Also, this framework is 2-way-binding.

What makes Vue unique and what I need to emphasize, it is one of the most straightforward JavaScript frameworks. His creator’s efforts to make it as simpler as possible influenced this, to change the complex concept that AngularJS has. Vue is a beginner-friendly with detailed documentation and a growing community.

How popular is it?

It is fascinating that Vue is becoming a trend in the front-end development community without the names of large and well-known companies behind it. A simple structure and ease of integration must undoubtedly overwrite his popularity.

Statistically, Vue has 128,158 stars on GitHub and 121 stars/year and its community are growing every day. At the time of writing the article at the daily level, he had 102 stars.

Where is it used?

This framework has a wide purpose, from web applications to mobile and PWA. Similar to React it is suitable for different types of projects, from simple single page applications to the more complex and dynamic ones. Mainly uses Weex framework to develop a mobile app. Except for the high performance and simplicity that its main features, Vue has the support of numerous components that further increase its potential.

Big projects/companies that use it?

Vue.js is used among others in apps like Xiaomi, Alibaba, Gitlab, Laracasts, Reuters, 9gag.

Pros
  • Beginner friendly,
  • Popularity and community are rapidly growing,
  • Simply syntax,
  • Flexibility,
  • Typescript support,
  • Hight performance,
Cons
  • It is not maintained by well-known companies like Google,
  • The youngest is from all frameworks,
  • Being too flexible in structure can be problematic,

Duomly - programming online courses

5. jQuery

I’m sure that almost everybody is familiar with jQuery, a library that has greatly facilitated JavaScript work. John Resig developed it and published in 2006, which puts it in the oldest front-end library compared to others on this list. Regardless of this, its use is still impressive today. One of the reasons we use jQuery for many years is its simplicity and minimalization in writing JavaScript code.

Unlike other frameworks and libraries, jQuery is totally beginner-friendly.

How popular is it?

The total number of stars on GitHub is 50,928. The growth of the stars per day is constant over the year, about 8, and there are not many fluctuations. A community is enormous, and for many years in a lot of questions about the problems you can encounter during work, there are already answers.

Where is it used?

The purpose of jQuery is not like other analyzed frameworks because jQuery is primarily a library. The essence of its use is DOM and CSS manipulation, and it is mainly focused on the interactivity and functionality of the website.

Communication with server data can be accomplished by using the jQuery Ajax method. I must note that as the application grows, this library can be able to complicate the development process of the same and result in poorer performance.

However, although jQuery is not intended to build a mobile app, it has got a new characteristic from the jQuery Mobile framework. This framework has expanded the boundaries of its use, adapted to modern requirements, but still in a far smaller percentage compared to, for example, React or Vue. Another important thing is that jQuery is abundant with plug-ins which can be of great help during your work.

What makes jQuery special, compares to other frameworks and libraries, is that this library is compatible with all browsers. Unlike it, it’s often the case that other frameworks are developing quite quickly and therefore are not supported by all browsers.

Big projects/companies that use it?

Some companies that use jQuery are Twitter, Microsoft, Uber, Kickstarter, Pandora, SurveyMonkey.

Pros
  • Beginner friendly,
  • Compatible with all browsers,
  • Ease of use,
  • A lot of plugins,
  • Big community,
Cons
  • jQuery can be very slow,
  • It is not intended to develop more complex projects,
  • Not intended to develop mobile applications,

Duomly - programming online courses

6. Ember.js

Another JavaScript framework that, because of its characteristics, deserves to be on this list is Ember. It is a component-based and 2-way-binding like Angular. Created by Yehuda Katz and published in 2011.

When we talk about the weight of learning, Ember is one of the harder frameworks to master, it’s not a flexible structure, and you will have to spend a lot of time (this is especially true for beginners). Its architecture is amazing. The thing I have to mention about the learning process itself is that Ember has one of the best documentation, which I believe can be of great help.

How popular is it?

According to GitHub statistics, Ember has 20,637 stars and in the past year, the average growth of stars per day is 5.

Although it has never gained popularity such as Vue, some experienced developers appreciate Ember who has met with him except other frameworks as well.

Where is it used?

Like other frameworks and Ember is adapted to modern technological needs. They intend it for developing web applications and mobile app. Cordova framework is most used to create mobile applications.

Compared to other frameworks, Ember is designed to fulfill the demands of very complex web applications. But, it may not be the best choice due to slow rendering.

Big projects/companies that use it?

Companies using Ember are LinkedIn, Yahoo!, Microsoft, Apple, Netflix, Skylight and others.

Pros
  • 2-way-binding,
  • One of the best architectures,
  • Suitable to develop complex applications,
Cons
  • Difficult to learn,
  • A small community,

Duomly - programming online courses

7. Backbone.js

Very small, organized and efficient JavaScript library. That’s Backbone.

Jeremy Ashkenas created this library and published in 2010. Backbone doesn’t provide data binding, and creators base its organization on the MVC principle.
Since this is a library, learning is quite simple, especially with the extensive documentation it has.

How popular is it?

When appearing to frameworks, Backbone has significantly declined popularity. It has 27,284 stars at the moment and per year it gets a one star.

Where is it used?

Although not too popular, Backbone can have extraordinary applications for small and simple web apps. Backbone is not intended for large applications because in this case, the performance is low.

Big projects/companies that use it?

Companies who use Backbone are LinkedIn Mobile, Pandora, AudioVroom.

Pros
  • Beginner friendly,
  • Good choice for a small app,
  • Organized,
  • Clean,
Cons
  • It’s not a good choice for a big app,
  • Popularity declined with emerge of frameworks,

Duomly - programming online courses

The ranking of the frameworks with the highest amount of jobs
  1. React.js – 8,203

  2. Angular – 2,082

  3. jQuery – 1,795

  4. AngularJS – 830

  5. Vue.js – 370

  6. Ember.js – 170

  7. Backbone.js – 46

The rank of the languages with the highest salary

To estimate the most paid technology we have taken the median salary for the last six months.

  1. React.js – $62k

  2. Angular – $59k

  3. AngularJS – $59k

  4. Backbone.js – $59k

  5. Ember.js – $54k

  6. Vue.js – $53k

  7. jQuery – $50k

The easy to learn rank
  1. jQuery

  2. Backbone.js

  3. Vue.js

  4. React.js

  5. Angular

  6. AngularJS

  7. Ember.js

The selection and evaluation of the framework most depend on what kind of problem you want to solve. For example, if you need only a simple single-page application, Angular is the right choice. However, if we talk about the more demanding, then this is React. You should remember that, for example, Angular, Vue, and Ember are complete libraries while React becomes complete when including other libraries.

In the field of mobile application development, PWA is slowly occupying the Native app site, primarily because of its effectiveness. jQuery, Backbone, and AngularJS cannot compete Angular, React, Vue and Ember in this sphere. However, although they do not follow modern trends, they have their advantages, especially jQuery, which is still widely used today.

When it comes to a high amount of job and highest salary React and Angular developers are now the most paid and the most wanted, but it’s a matter of moments when Vue will reach their level. Vue is unique because it is very similar to Angular but far more straightforward and is the right choice for beginners. Another important thing about Vue. If you have followed the statistics of popularity, it has surpassed both Angular and React and, unlike them, it was not created by large companies. So, I think this fact is significant for the estimation and quality of the framework itself.

Winner: React and Vue

Duomly - programming online courses

Latest comments (51)

Collapse
 
camilablnpa profile image
Camila

Thank you !

Collapse
 
manyeya profile image
Khutso siema

You scared of calling svelte a framework?

Collapse
 
devpato profile image
Pato

"The best front-end framework to learn in 2019" should be re-named to the best front-end technologies to learn. Most of the techs mentioned here are not even frameworks

Collapse
 
kdfemi profile image
MiniSoda

I was surprised when in you article you stated Angular documentation is not beginners friendly i beg to differ because i picked Angular up In June and the documentation has been really helpful, moreover TypeScript learning curve is not that high you practically don’t need to learn TypeScript if you want to learn Angular you can pick TypeScript concepts along as you learn Angular.

Collapse
 
harrika profile image
henry kirya

so why isn't anyone talking bout svelte the new kid on the block?. I find it has an easier learning curve than even Vue yet its just as powerful

Collapse
 
jckr profile image
Jerome Cukier

As a front-end engineer at Uber - we don't use jQuery. We're almost exclusively React, though a handful of projects use Angular of Vue.js. There's a couple of instances of jquery in our code in old projects.

Collapse
 
edisonpappi profile image
Edison Augusthy

what about Svelte...?

Collapse
 
ashraful profile image
Mohamad Ashraful Islam

How it's a cons that "Vue is not maintained by big company like Google"?

Collapse
 
karan_shah89 profile image
Karan Shah

If you're giving out advice to learn something new, I would never add AngularJS, jQuery or BackboneJS (which uses jQuery too btw) to any list!

You should add other React Frameworks instead like GatsbyJS

Collapse
 
pallu profile image
Pallab Gupta

Knockout?

Collapse
 
8detect profile image
Infinity Detective • Edited

After studying seriously about vue 3 i've decided to stick with react hooks for more convenient. 2-way binding is not a good idea ! Unnecessary ! Very confused ! Too many syntactic sugar, too many helper functions for vuex . Vue is easy to learn but actually more things to remember and of course more things must be changed in forthcoming version 3 😱
Good luck to Vue 🍀

Collapse
 
starvsion profile image
Junhai

Correction : Vue is both 1-way and 2-way data binding

Collapse
 
stephanelaforce profile image
Stéphane Laforce

What about Svelte?

Collapse
 
vgerasimova profile image
vgerasimova

I would add here blazor also

Collapse
 
sunitk profile image
Sunit Katkar • Edited

I used to love Google GWT. It allowed working in Java and yet produce HTML and JS. Debugging was just like debugging a Java Swing app via Eclipse IDE. Of all the new frameworks, I personally like VueJS. But I'm sure a shiny new toy like Svelte will soon catch up and we will see articles like this on that :-)

For me, it's all about the expertise available in the team and the existing framework used in the company code base. For clean slate projects, all of the above pros and cons come into play .