The Solo JavaScript Developer Challenging Google and Facebook

Vue, an open-source framework, is winning fans among the creators of web applications.
Image may contain Triangle
Hotlittlepotato

It's hard to escape the gravity of internet giants like Facebook and Google. Not only do they offer an ever-growing number of apps and services that are hard to live without, many other popular websites and applications incorporate code written by these companies.

That's because today's web developers don't typically write all of their code themselves. Instead, they rely on open source "frameworks," which provide both a collection of reusable parts and an overall structure for building an application. Frameworks free developers from much grunt work, allowing them to focus on the newer, more interesting parts of an application.

Google’s Angular and Facebook’s React are the two most popular frameworks for building applications with JavaScript, the standard language for writing code that runs in your browser, as opposed to on a company's server. That makes sense. The two companies are responsible for some of the most complex browser-based applications, such as Gmail, Google Docs, and Facebook itself. And they can afford to pay programmers to maintain those frameworks, alleviating concerns that crucial software could end up abandoned.

But a growing number of developers are flocking to Vue, a JavaScript framework developed by independent programmer Evan You and funded by donations from individual users and sponsorships from small companies. At the end of 2017, Vue was tied for third-most-downloaded JavaScript framework with the more established Ember, behind Facebook’s React and Google’s Angular, according to data compiled by the startup NPM, which offers tools for installing and managing packages of JavaScript code. The rankings were unchanged in more recent data presented at the JSConf event in Carlsbad, California, this week. But Vue grew faster over the past two years than Angular. Vue has been used by the likes of Adobe, Baidu, Alibaba, Netflix, Nintendo, and Tencent. Even Facebook has used Vue for a marketing page. That’s an impressive achievement given that Vue has just two full-time developers and lacks the backing of a name-brand company.

The big reason for Vue's success, developers who rely on it say, is its simplicity. More companies want to build web applications that, like Google Docs, feel as snappy as a native application. But few actually build applications as complex as Facebook’s or Google’s. What developers often really want is a framework for building small, interactive web apps. Angular can be overkill for simple applications, while React has a steep learning curve even for experienced developers.

Vue applies a more "layered" approach to building a framework. Its simple core foundation is easy for developers to learn. More advanced features can be added atop that foundation. But those advanced features are optional, and they don’t add weight or complexity to an application that doesn’t use them. "It’s very easy to get started, and it grows with you as your skills develop," says Taylor Otwell, a Vue user and creator of the popular server-side framework called Laravel.

Vue has been around since 2014, but it's only really taken off in the past two years. You started the project while working at Google's Creative Lab, a multidisciplinary team within the company. He wasn't involved with the Angular team, but he used it in a few projects, and it inspired him to create his own simpler framework based on some of the same ideas.

"I didn't set out thinking 'I'm going to make a framework to beat the other frameworks,'" he says. "It started out as an experimental little library to solve problems I encountered in my work."

Early on, Vue caught the eye of one of its most vocal advocates, Jinjiang Zhao, a China-based developer at e-commerce giant Alibaba. Zhao says he had started working on something similar at Alibaba, but when he discovered Vue, he adopted it and encouraged Alibaba colleagues to use Vue in their projects. He says it was slow going, because Vue had no name recognition compared with Angular. Still, Zhao kept an eye on Vue, using it in small internal projects when he could; he also helped translate the documentation into Chinese and wrote blog posts in Chinese that helped Vue attract attention in China.

You left Google in 2014 for a job with Meteor, a startup that then was focused on creating a framework for using JavaScript for both the browser-side and server-side portions of an application. He continued working on Vue on the side and decided in 2016 to devote himself to working on it full time. It was around this time that Vue got its "big break": Otwell and the team behind the Laravel framework added official support for Vue. That put Vue in front of the thousands of developers using Laravel.

Zhao, meanwhile, made progress at Alibaba, converting more of his colleagues to the framework, which quickly spread to other Chinese companies. The fact that You is Chinese himself, and speaks frequently with the Chinese JavaScript community, helped as well.

But even with a large and growing user base, making money from open source projects is hard. Even popular projects used by the world’s largest companies struggle with funding. You makes money from Vue in a few ways, including consulting, private training sessions, selling ads on the documentation, and donations. But the most important revenue stream comes from selling sponsorships that allow companies to place their logos on Vue’s website. "I decided to sponsor the project because I was using it for many projects and felt that it deserved to be a paid product," says Otwell of Laravel. But not every company using Vue has been so generous. Eventually, You hopes to add more commercial offerings to entice more companies to pay up.

The big question is whether Vue can sustain developer interest. The browser-side programming ecosystem is notoriously turbulent, with libraries and frameworks frequently rising and falling in popularity. It wasn't long ago that an older project called Backbone was by far the most popular JavaScript framework, and Angular and React were the insurgents.

Regardless, You has already proven that independent software can still find a place in the era of internet giants.


More Great WIRED Stories