DEV Community

Cover image for The 10 most important JavaScript frameworks of the past decade
Brian Neville-O'Neill
Brian Neville-O'Neill

Posted on • Originally published at blog.logrocket.com on

The 10 most important JavaScript frameworks of the past decade

Written by Ovie Okeh✏️

Whoop! 🥳

A whole decade has come and gone, and what a decade it was. Back when ECMAScript 5 was just released, no one would have predicted that 10 years later, we’d be arguing about const vs. let😀.

We’ve witnessed various JS frameworks pop up left and right. Some have changed the way we build software entirely, while others have not been able to stand the test of time, so I thought it would be nice to reflect on all the JavaScript frameworks that have influenced us as developers in one way or another this past decade.

These are frameworks that may have revolutionized the way we build software. They were on the bleeding edge of advancements and usually challenged the status quo to usher in a new era of software development.

The ones you’ll see in this article were selected based on the following criteria, and of course, these still comprise my personal opinions.

  • Was released between 2010–2020
  • Still in active development
  • Significantly influenced the way a large number of developers build software
  • May (or may not) have spawned other libraries

If you disagree with this list, which I’m confident you will, please let me know your reasons and your preferred choices. Note that this is in no order, as it would be a fool’s errand to “rank” frameworks based on importance.

Let’s get to it, then. These are my top 10 picks for the most important JavaScript frameworks in the past decade.

LogRocket Free Trial Banner

1. React

I’m sure this surprises no one, as React is one of the best-loved JavaScript libraries, with a large and vibrant community and a large number of job opportunities. Yes, I know it’s a “library,” but the whole React ecosystem has grown so much that it is usually compared to other frameworks.

Let’s see how it meets the requirements.

React was initially released on 29 May 2013, with the latest version, v16.12, being released in November 2019. The minor release came with new bug fixes, which highlights why React is such a stable library.

We have to give props to the React team as they continuously push new features designed to make software development with React such a joy.

Its use of the virtual DOM (VDOM) diffing algorithm and its one-way data flow has certainly influenced the way a lot of software developers build software, so we can confidently say it meets that criterion handily.

Apart from its massive adoption and large community, React has also spawned various other libraries like Enzyme for testing, React Intl for international date formatting, and even whole frameworks like Gatsby and Next.

2. Express

Released in November 2010, Express has become the de facto framework for building APIs and web servers using JavaScript (thanks to Node.js). Few frameworks have grown into such a monopoly the way Express has.

Express made server-side JavaScript much easier and more accessible for a large group of developers and led the way for other, newer frameworks like Koa.js and hapi.

It has a very large and supportive community backing it, as well as the benefit of being battle-tested over time. While you can do a lot with Express on its own, it’s the vast array of easily configurable middlewares that really makes this framework shine.

There is a rich ecosystem of middlewares out there, which means you almost never have to write anything from scratch unless you choose to. Pair this with its minimalist approach and you have got a framework that has impacted web development so much that it would be a travesty not to include it here.

3. Backbone.js

While Backbone is gradually being forgotten and is well on its way out, for a time, it was one of the leading frontend frameworks. These days, building single-page applications (SPAs) is a pretty trivial matter, but before Backbone was released in 2010, SPAs were largely unheard of.

The original pioneer of single-page applications, Backbone made it tremendously easier to build more complex web applications using just JavaScript, and it ushered in an era of fast, lightweight frontend frameworks/libraries.

Although it adopted an imperative style of programming — a style that is slowly being replaced in favor of more declarative patterns — it can still be said to have popularized the MVC approach of building web apps.

All these reasons alone make it clear why it should be here, but the fact that it is also still in use today (although in decline), as well as being the most stable JavaScript framework, means that it deserves a spot on this list.

4. React Native

Before React Native, publishing your application to different platforms usually required multiple codebases of the same app, complete with different tech stacks, teams, and processes. This is because, traditionally, different platforms utilize different programming languages and tools.

The ability to develop all your apps on all platforms using a single language (and, often, a single team), drives down costs and reduces team management overhead, which is a big reason why React Native is so popular right now.

Although hybrid apps built this way are usually not as performant or as optimized as their native counterparts, for most cases, they’re usually enough to get the job done. React Native has grown so much that it has a large number of available jobs and a huge community behind it.

Looking back at the software development space prior to React Native, it’s clear just how much it has influenced the way we built software in the past decade, and it shows no signs of slowing down as new features are still getting added.

5. Ionic

Another enabler of cross-platform application development, Ionic has made it possible for a large number of developers to build performant cross-platform apps.

Apart from having a great developer experience, Ionic places emphasis on open web standards, going so far as adopting it as a core philosophy.

Since its release in November 2013, Ionic has been steadily growing and evolving as a platform, and thanks to its open-source nature, it has been widely adopted by the dev community, with over 40,000 GitHub stars to show for it.

While it is definitely one of the less popular entries on this list, it has no doubt impacted the way we build cross-platform applications and is still growing daily.

6. Vue.js

One of the most-loved JavaScript frameworks, Vue.js is erroneously viewed as an underdog in the frontend frameworks space. This might be due to the fact that unlike React and Angular, it doesn’t have any big tech company backing it.

While this fact comes with both pros and cons, you can’t deny just how much Vue has impacted us as JavaScript developers. It is currently the most-starred JavaScript framework on GitHub and came in second on the list for the most-loved frameworks in StackOverflow’s 2019 developer survey.

The combination of its very active community, its ease of use when developing with it, its lightweight size, and the fact that it’s still in active development means that the only place for Vue to go is up.

7. AngularJS/Angular

While grouping these two frameworks together may be seen as a travesty by most developers, I feel it’s appropriate to do so because of the shared history between these two massively different frameworks.

AngularJS was first released in 2010 and, along with Backbone, was one of the first true JavaScript MVC frameworks. The fact that it was one of the first of such frameworks meant that while it indeed proved revolutionary at the time, it was far from perfect.

It was more difficult to work with than other frameworks like Backbone and Ember, and it also had a larger bundle size, which affected performance on lower-end devices. It was also geared towards enterprise software, which made it a bit harder to pick up for newer developers.

These were some of the factors that led to the development of Angular.

Angular shared a lot of the same features with its predecessor, like the MVC architecture and the declarative approach to building UI, but it also did things differently, too, such as its switch to TypeScript for development and its revamped approach to modularity.

Angular currently is one of the most popular frontend frameworks today and, along with React and Vue, constitutes the “holy trinity” of frontend technologies.

8. GatsbyJS

Admittedly one of the newer entries in this list, it is by no means less important. This trendy offspring of React + GraphQL is quickly becoming the framework of choice for many developers. It’s growing so fast that it already has more than 40,000 stars on GitHub in less than three years.

While GitHub stars are not an official metric of how important a framework is, it is still a good indicator of interest over time. To put things in perspective, jQuery, which is one of the most popular libraries of all time, is 11 years older and currently has around 50,000 stars.

Again, GitHub stars are not a hard-and-fast metric, but when you take a step back and consider just how much developers love Gatsby and the sheer number of plugins in the ecosystem, it’s clear that this is not just a fad here today to be gone tomorrow.

It takes a different approach to building web apps, with a focus on generating static sites that are usually faster, more accessible, and easier to build than traditional frameworks like Angular.

It has spawned a huge ecosystem of plugins and developers, so much so that you hardly have to do anything yourself. This frees you up to spend more of your time on the actual business logic and is probably why so many developers who’ve tried it do not want to go back.

9. Electron

This is another underestimated (in my opinion) JavaScript framework that was born out of similar reasons as React Native.

Electron is a framework for building cross-platform desktop applications using web technologies like JavaScript, HTML, and CSS. It has much of the same advantages (and disadvantages) as React Native in the sense that it allows teams to develop for different desktop environments without having to set up different teams for different environments.

It has proven so useful, in fact, that it has been adopted by major tech companies like Slack, Microsoft, and Atlassian for some of their desktop apps. It also has a huge collection of apps built by independent developers.

While it’s not perfect — nothing is — it’s still performant enough to run the vast majority of desktop apps available, and thanks to the active, ongoing development, it is only going to get better.

10. Mocha

I couldn’t come up with a list of impactful JavaScript frameworks without adding the most popular JavaScript testing framework in existence (no, Jest is a library🙂).

Test-driven development (TDD) has become so popular that it’s the default way of building software for many companies. This might be due to the excellent state of testing frameworks/libraries in JavaScript, and at the forefront of this surge in popularity is Mocha.

Mocha is an extensible test framework for Node.js, and it comes with a slew of features like browser support, async testing, and the option of using almost any assertion library for test assertions.

The flexibility, ease of use, excellent documentation, and massive community behind Mocha makes it a no-brainer for testing Node software.

Honorable mentions

Since this list is not exhaustive in any way, there are some honorable mentions that were omitted here.

This is either because there was no space for them or because they’re not really traditional frameworks even though they’ve impacted the JavaScript community as much as some of the frameworks listed above.

Node.js

This is one of the most important inventions in web development of the past decade (framework or not), and it was only omitted because it is not a traditional framework. Rather, Node.js is a runtime environment that allows you to run JavaScript outside of the browser.

It has spawned a whole host of frameworks/libraries built on top of it (Express, FeathersJS) and is responsible for the pervasiveness of JavaScript on the backend.

jQuery

Before there was AngularJS, Backbone, Meteor, et al., there was jQuery. It is the most popular JavaScript library ever, with over 73 percent of the 10 million most popular websites making use of it in one way or another.

Even though its popularity is waning (thanks, React), it still has a massive community behind it and is still actively being deployed in production websites more than 13 years after it was released.

Bootstrap

I’m sure a lot of you reading would be surprised to find that I did not include Bootstrap in the list, seeing as it is extremely popular and it meets all the criteria I outlined earlier. I have a good reason for not including it, though.

Much of Bootstrap’s impact can be attributed to HTML and CSS as opposed to the JavaScript it comes bundled with. The vast majority of developers installing Bootstrap are doing it for the access to the huge HTML and CSS collection of reusable, battle-tested components rather than for some JavaScript functionality.

This is why I felt it would be unfair to group it along with pure JS frameworks above.

Conclusion

Now this list is by no means exhaustive, as this article would get dense really quickly if it included ALL the impactful JavaScript frameworks. This is also partly why I decided not to include any libraries (React is special) in this list and instead focused on fully fledged frameworks.

This article, of course, will contain my personal biases and, in some cases, may not be fully representative of the truth as I didn’t personally use some of the frameworks listed here, so please, if you find anything that seems off, a quick comment would be appreciated.


Plug: LogRocket, a DVR for web apps

 
LogRocket Dashboard Free Trial Banner
 
LogRocket is a frontend logging tool that lets you replay problems as if they happened in your own browser. Instead of guessing why errors happen, or asking users for screenshots and log dumps, LogRocket lets you replay the session to quickly understand what went wrong. It works perfectly with any app, regardless of framework, and has plugins to log additional context from Redux, Vuex, and @ngrx/store.
 
In addition to logging Redux actions and state, LogRocket records console logs, JavaScript errors, stacktraces, network requests/responses with headers + bodies, browser metadata, and custom logs. It also instruments the DOM to record the HTML and CSS on the page, recreating pixel-perfect videos of even the most complex single-page apps.
 
Try it for free.


The post The 10 most important JavaScript frameworks of the past decade appeared first on LogRocket Blog.

Top comments (0)