Marko
By eBay
Marko is a fast, HTML-based JavaScript UI framework created at eBay that emphasizes streaming server-side rendering and fine-grained reactivity for large-scale e-commerce applications.
Definition
Marko is a fast, HTML-based JavaScript UI framework created at eBay that emphasizes streaming server-side rendering and fine-grained reactivity for large-scale e-commerce applications.
Overview
Marko was developed internally at eBay to solve real performance problems at massive scale: rendering complex product and search pages quickly, even on slow networks and devices. Its templates look close to plain HTML with embedded logic, and its compiler generates highly optimized rendering code, historically giving it a reputation as one of the fastest server-side rendering solutions available for JavaScript. A distinguishing feature is streaming rendering — Marko can begin sending HTML to the browser before the entire page has finished rendering on the server, improving perceived load time for content-heavy pages. It also supports fine-grained reactivity for client-side updates without requiring a full virtual DOM diff of the page. Marko has been used in production at eBay for performance-critical pages, and while it has a smaller community than React, Vue.js, or Svelte, it remains a notable example of a framework built specifically around server-rendering performance rather than client-side developer ergonomics as the primary design goal.
Key Features
- HTML-like template syntax with embedded JavaScript logic
- Streaming server-side rendering for faster perceived load times
- Fine-grained reactivity for efficient client-side updates
- Compiler-driven optimization for minimal runtime overhead
- Designed for high-traffic, performance-critical e-commerce pages
- Supports both server and client rendering from the same templates