DEV Community

Cover image for JavaScript frameworks
Ameya Joshi
Ameya Joshi

Posted on

JavaScript frameworks

What are JavaScript Frameworks?

Javascript frameworks are tools or libraries that help developers in developing an app. These use a completely different syntax of JavaScript or just add functionality.


What we'll discuss:

Do you need a framework?

You have a framework, but do you need it?
Well at one point or another you will need a JavaScript framework. It also depends on your use case, for example if you are making a simple app for yourself or if the app does not need:

  • Code organization and maintainability
  • Cross-platform development
  • Rapid development
  • Dom manipulation
  • Extremely good and efficient SEO

But if your app needs any of those you should consider using a framework. Your choice of frameworks can range from a simple one like HUGO or Astro to a complex multi-purpose one like React, Angular or Svelte.

The most popular JavaScript frameworks

Here's a list of the 5 most popular JavaScript frameworks in 2023:

ReactJs:

ReactJS logo
ReactJS is a JavaScript framework that is created by Mark Zuckerberg(Meta). It is used to make Single Page Apps for the web, and also janky and jittery mobile apps with React Native.
I would recommend learning NextJS frist, with this you can pretty much create whatever you want. It is also the most popular framework of the React family.

Learn this to land a job at:

  • Meta(formerly known as facebook)
  • Pinterest
  • Netflix
  • The New York Times

Pros:

  • Easy to learn
  • SEO friendly
  • Extremely good performance.

Cons:

  • Lots of boilerplate code
  • No specific way of organizing the code, hence making it difficult to collaborate and manage the project properly.

Learning Curve:

The ReactJS framework has a pretty balanced learning curve and you can learn the essentials in about 2 weeks or less.(Took me about 10 days, to learn NextJS.)

Svelte

Svelte logo
Svelte is the most loved framework according to developer community. There are many reasons for this, here's a list of the biggest reasons svelte is the most loved framework:

  • Amazing Developer Experience(DX)
  • Great Docs
  • Big and active community
  • Less boilerplate
  • Small framework size
  • Simplicity

Developers love Svelte

Some disadvantages that come with the "most loved framework" are:

  • Limited tooling
  • Less employers
  • Smaller developer community

Angular:

AngularJS

Created by Google, we have AngularJS.
You should consider learning Angular if you want a job at:

Google --> AngularJS
AngularJS is an open source JavaScript framework, created on 13th September 2016. It is used by many companies such as:

  • Vevo
  • NBC
  • Udemy
  • Upwork

Learning Curve

While angular has great applications and is very famous, it has one problem, the learning curve. I would like to express all of the problems with the Angular learning curve with one image:
Meme depicting angular learning curve
Courtesy of u/coredev on reddit. Originally posted on r/angularjs 9 years ago.

Pros:

  • Huge community of developers
  • Great flexibility ####Cons:
  • Verbose code
  • Really bad learning curve
  • Not the best performance(compared to ReactJS)

Vue

Vue Logo
Vue is known because it is easy to learn and flexible. It is most used by individual developers and smaller teams. Another popular framework specializing in progressive enhancement is Petite Vue. Created by Evan You.
Evan You

Pros:

  • Unlike AngularJS, Vue is extremely easy to learn, making it a go to language for beginners who want to get into web development.
  • Performant
  • Flexible
  • Component Based(much like ReactJS)
  • Has an official CLI(Command Line Interface)

Cons:

  • Smaller community and ecosystem
  • Not used by a lot of big companies
  • Community stability

EmberJS

Created by Yehuda Katz, initially released in 8 December 2011. It is used by over 510 companies. Some including: Microsoft, Linkedin etc.
EmberJS logo

Pros:

  • Good system for code organization.
  • Comes with a powerful CLI(Ember CLI)
  • Reduced need for explicit configuration
  • Great routing
  • Active community

Cons:

  • Steep learning curve
  • Very big framework
  • Slower rate of community adoption
  • Less flexibility

Which framework is the best for you?

While choosing a framework you have to keep one thing in mind, "that is there is perfect framework."
I personally like using react because of its big and active community. Getting help is really easy. But as of the best one for you:
If you're a beginner I would recommend learning something simple like Vue, or React. They both are really good frameworks and as a beginner you can work your way up the programming ladder in practically no time.
But really it depends on your project needs. If your main priority is to make a simple SPA(Single-Page App) with good SEO you should learn React. If you just want to learn something new as a beginner you should chose Vue. And if you are here to create a big app that requires good code maintainability, Angular is the best.

With that I would like to conclude this article, and always remember:

There is no perfect framework. ~Literally almost every single JavaScript developer.

Top comments (0)