With over 140k stars on GitHub, Vue.js is currently the trendiest JavaScript front-end framework, beating Angular and React in GitHub star count by a fair margin. When it comes to overall popularity, React is still the king and Angular, thanks to its specificity, holds a solid place. But here at Monterail, we’ve been huge fans of Vue for a while now, and the developer community worldwide, too, seems to be following suit. So what is it about Vue that makes it gain more traction every month?

Vue might have started as a small project driven by developer needs of its creator, Evan You, but it has matured considerably over the years—becoming a full-fledged framework with a grownup ecosystem and developer tooling. Along the way, Vue attracted a decent number of contributors, sponsors, and evangelists.

Vue.js wins all the GitHub stars. Source: Tim Qian

On the JS front-end framework battlefield, however, React wins with Vue.js in terms of popularity and commercial usage. Yet, there’s no doubt Vue is here to stay and is slowly but progressively stepping into developers’ reality.

In fact, the number of developers who used Vue and would use it again grew from 19.6% in 2017 to 28.8% in 2018, according to the State of JavaScript survey. In the same survey, Vue earned 91.2% as a framework with the highest satisfaction rating among users.

I think Vue got the highest satisfaction rating among frameworks in State of JS this year (91.2%) - thanks to our users, and we aim to do even better! Hope we can change the mind of the 568 people who don’t want to use it again ;) https://t.co/7MrM8Y4ekq — Evan You (@youyuxi) November 19, 2018

Let’s take a look at the stats.

2016 2017 2018 React 35.3% 26.9% 19.1% Vue.js 32.2% 51.3% 46.6%

Percentage of “Heard of it, would like to learn” responses. Source: stateofjs.com

Why will Vue.js keep growing?

By building on the best ingredients of Angular and React and adding its own unique spice to the mix, Vue turned out tasty enough to induce constant appetite in JS developers.

Here’s why Vue gains more traction.

Intrigued by what Vue can do? Read more about this technology from the experts! We've become an official Vue partner, organized the first VueConf, and authored State of Vue.js report. Let us share our experience with you. Read our key takeaways from Vue report.

Gentle Learning Curve

Vue’s gentle learning curve steals the hearts of beginners and advanced developers. The software developers we asked in our State of Vue.js report said the learning curve is what sparks so much interest around Vue. After going over the materials included in the official guide, you can go ahead and start making your first Vue app—no prior knowledge of ES2015, TypeScript, JSX, or build systems required.

All you really need to get going is a basic understanding of JavaScript, HTML, and CSS. Although not necessary, some experience with using frameworks is also welcome, even more so if you’re after building more complex web apps (more on that later).

Vue’s high accessibility helps fast-paced dev teams get all their creative juices going without having to spend a lot of time familiarizing themselves with additional syntax extensions. Putting together a team for a project or integrating Vue into one is easier and faster. Even though there aren’t many Vue developers on the market yet, developers experienced in React can easily switch to Vue and start delivering value within more or less a week.

Vue also cuts the time required to grasp the complexity common to, for example Angular, which is particularly handy when writing simple web apps.

Modular and Flexible Development Environment

Web apps in Vue are built with the use of components. While it already gives devs lots of flexibility and adaptability as per project needs, Vue’s single-file components are loosely coupled, which improves code reuse and decreases development time.

Component-based architecture is ideal for building apps with the intention of future scaling. In Vue, building large-scale apps requires using a modularized build system from the get-go. But Vue gives devs some flexibility here because the bundlers recommended by Vue, Webpack or Browserify, come with the ability to later transform the source code with preprocessors of your choice.

Pleasure to Develop

At Monterail, our devs frequently highlight the sheer pleasure with which they build apps in Vue. The freedom to structure the code as it pleases the developer and the unopinionated way of coding are main reasons why there’s so much love for Vue.

Sorting through the codebase is hasslefree—practically everything you need is inside the .vue file. From the data model and template to CSS, properties, computed values, and methods, getting to know the job of a component spares you an additional headache.

Rich Ecosystem and Versatility

With a rich collection of libraries and set of tools facilitating development, the Vue world has everything a developer needs. The more notable tools that amplify coding experience are the excellent Vuex for state management and vue-routing for routing and mapping your single-page app states to respective URLs.

Vue also has its own DevTools, which come in the form of a browser extension. DevTools simplify application debugging and checking the state and hierarchy of components. They allow you to live-edit your app, track custom events, and time-travel debug your app to see previous versions and the changes made.

Vue’s ecosystem. Source: GitHub

Mobile Development

Vue offers developers a few solutions for cross-platform mobile UI development. There’s Weex, created by the e-commerce platform Alibaba, and NativeScript with its vast repository of tools, components, and plugins. Recently, Ionic, too, came aboard the Vue mobile development team.

In contrary to React Native’s “Learn once, write anything”, both Weex and NativeScript say “Write it once, run it anywhere”. This approach enables you to manage the UI in a transparent and repeatable way between multiple platforms. That’s quite awesome.

Reactivity

Data in various HTML elements renders dynamically in modern web apps. Vue is equipped with its proprietary reactivity mechanism that refreshes user interface automatically. This approach saves a lot of time and additional lines of code that the developer can use to focus on introducing other features and be more productive.

High Performance of Built Applications

Vue.js is fast. It’s not the fastest framework in the hood, but what’s currently available with Vue.js is plenty enough to deliver impeccable UX in SPAs as well as UIs.

Startup metrics (lighthouse with mobile simulation). Source: Stefan Krause

In the mobile apps world, Vue launches applications faster than Angular and React. Since 53% of users abandon mobile sites that take more than 3 seconds to load and the web is shifting toward mobile-first experience, Vue’s speed is an important perk to consider when choosing a JavaScript front-end framework.

HTML Templates

This is somewhat debatable, but Vue’s HTML-based templates increase productivity, especially for those of us with an HTML background. Vue’s templates also help to introduce reactivity features into existing web apps. The templates are compiled by Vue to have the virtual DOM render functionality. As a result, during app state change, Vue introduces a minimum number of manipulations to the DOM.

Vibrant Community

Vue’s community is blooming and actively contributing to the development of the framework. Several big conferences take place annually all over the world that are devoted wholly to Vue. The 2017’s VueConf in Wrocław, Poland, that we helped to organize ignited the Vue-related conference storm all over the world.

Here are some of the upcoming conferences worth checking out:

But the community also organizes not just full-blown conferences. Vue meetups happen in multiple countries on six continents. Over a beer or coffee, Vue developers can exchange their knowledge and experiences with using the framework.

Simple Art of Mastering Vue

Vue.js has downright excellent official documentation that lets developers discover pretty much every aspect of Vue and its ecosystem. The official guide has examples and detailed descriptions. API docs target most issues devs might encounter while coding.

Tutorials

Aside from learning Vue via the official guide, you can also master the art of coding in Vue by using some of the available tutorials, with videos and examples included. The free courses guide you through Vue in a thorough and fun manner—especially Scrimba (recommended by Vue).

Other courses that will make you love Vue:

Intro to Vue.js by Vue Mastery

Vue on Laracasts

Vue.js on Tutorialspoint

StackOverflow and Official Chat

For various code riddles not covered in courses and tutorials, you can ask a question on StackOverflow. New questions and answers pop up all the time, so there’s a good chance you will get your question answered regardless of its complexity.

And when you’re stuck with a pressing coding issue you won’t be left alone—you can ask fellow coders for help on the official Vue chat and receive a prompt answer.

Vue Is Evolving

Since its launch in 2014, a lot of developers were reluctant to adopt Vue for fear of its abandonment, leaving everyone involved with a painstaking and costly task of merging into another framework. But that, of course, didn’t happen. In September, Evan You announced Vue.js 3.0. And even though there’s no definite release date as of yet, what’s important about the update is that it’s based on contribution and public feedback. Without corporate backing of known brands, Vue’s rapid rate of evolvement is a remarkable feat.

Vue’s ecosystem is getting bigger and better, gaining more and more appreciation of the developers and businesses alike.

Who’s Using Vue?

Vue.js may not yet be the most popular JavaScript front-end framework, but it’s been embraced by big names such as Alibaba, Grammarly, Xiaomi, Laracasts, and Reuters. You can browse through plenty of UI components, websites, templates, plugins, apps and what have you that were built with Vue to get an even better understanding of Vue’s awesomeness.

As for support in the back-end part of the field, Laravel, the PHP framework, recommends using Vue.js for front-end development, although it’s not a requirement.

Should I Add Vue.js to My Tech Stack?

In short, yes. However, Vue is not the only noteworthy and promising JS front-end framework out there. You’ll probably be best off testing out and working with a few frameworks to see for yourself which ones work for your projects and intended use and which do not.

So even though we love Vue, it’s not a perfect framework. But let’s be honest: it’s as close to perfect as it can be. And if we’re judging frameworks by their learning curve, maintenance continuity, and ability to spur developer productivity, then Vue.js shines like nothing else.