Analysis / News / Technology / Top Stories /

Marko, Polo: eBay’s UI Component Library Joins the JavaScript Foundation

10 Nov 2017 6:00am, by

The great thing about ginormous tech companies like eBay, Facebook and Google throwing their engineering might behind open source software projects is that we all get powerful and useful and free tools, fast. Sometimes the not-so-great part, though — the part we tend to talk about less — is, what happens when and if the corporate creators of a significant OS project eventually decide that organizational attention needs to be directed elsewhere?

This scenario is where the open source rubber meets the community road: since we benefit from the project, it’s on us to contribute back. Everybody is down widdat. However, it’s still a serious leap for a ragtag fleet of OS volunteers to take on a mega-enterprise-level project, even at the level of simple maintenance. Much less keep moving forward, improving and expanding, projects that could hold really, really important dependencies for dev projects out here in the wild.

This is where foundations come in. Entities like the Linux Foundation and the JavaScript Foundation exist to provide continuity and a center of gravity for the (sometimes unruly) open source universe. These nonprofits make it their business to provide oversight, governance and support for their entire particular ecosystems in general, and also to foster a roster of specific projects to ensure they continue to thrive over the long haul. For example, the JavaScript Foundation supports a few things you may have heard of: Grunt, Webpack, ESLint. And — oh yeah — a little library called jQuery.

Last week the JavaScript Foundation announced the newest member to its team: Marko, a library for building UI components to simplify web application development. eBay began the project in 2012 to meet the company’s own need for UI component support and asynchronous rendering for Node.js applications. The company itself now has 20,000 unique Marko UI components within its own web applications — all available to the open source community. Marko’s popularity has spread widely in the outer world as well: it currently averages  200,000 downloads from npm per month.

Given that UI component-based architecture is, these days, the predominant paradigm for building web apps, there are many solutions for creating and integrating UI components. Marko sets itself apart from its competitors by being particularly lightweight. It offers minimal boilerplate for users, a lightweight runtime for the browser (around 10kb gzip), and async and streaming server-side rendering (using Node.js).

Under the eBay team’s aegis, support for Marko grew — many different IDEs, editors, and services like GitHub provide syntax highlighting for .marko files. The core Marko team currently consists of a mix of eBay employees and outside developers.

The move to JavaScript Foundation supported project status means the foundation will “help the project develop governance for the ongoing maintenance of the project, as well as promotional support to grow the Marko community,” according to JavaScript Foundation executive director Kris Borchers.

No more, really, than the support any foundation project receives, but the status both helps to cement Marko’s position in the JavaScript ecosystem and makes it a little less daunting to approach as a contributor. Which is exactly what the eBay team is hoping for.

The company emphasizes that its support for Marko remains strong: “With nearly 20,000 UI components within eBay, we are committed to evolving Marko, and the Marko core team members that are employed by eBay will continue to maintain and lead the project,” wrote eBay engineer (and official Open Source Lead) Patrick Steele-Idem in a blog post titled “The Future of Marko.”

However, he continued, “By moving Marko to the JavaScript Foundation, we feel that we will be able to more closely align with other projects in the JavaScript ecosystem. In addition, we want to make it clear that Marko has, and always will be, open to outside contributors and maintainers. While we have seen great growth in the Marko community, we believe there is still a lot of potential yet to be unlocked.”

There you have it, Marko fans: the door is officially open. Ready to contribute Marko UI component number 20,001?

The Linux Foundation is a sponsor of The New Stack.


A digest of the week’s most important stories & analyses.

View / Add Comments

Please stay on topic and be respectful of others. Review our Terms of Use.