
simple.
If you know HTML, CSS, and Javascript, you know Marko
fast.
Faster loads via streaming and a tiny (~10kb gzip) runtime
progressive.
From simple HTML templates to powerful UI components
trusted.
Marko is powering high-traffic websites like ebay.com
Reactive UI components
Change the data backing a view and Marko will automatically and efficiently update the resulting HTML
classstyle {}<div.count></div><button.example-button on-click'increment')>Click me!</button>
Choose a syntax
Write in a familiar HTML-like style or drop the angle brackets and use Marko's concise syntax
<html><head><title>Hello Marko</title></head><body><h1>My favorite colors</h1><ul.colors><li forcolor in input.colors)></li></ul></body></html>
htmlheadtitle -- Hello Markobodyh1 -- My favorite colorsul.colorsli forcolor in input.colors)--
Silky smooth
Fast enough to power animations at 60FPS
The above animation is <div> tags. No SVG, no CSS transitions/animations. It's all powered by Marko which does a full re-render every frame.

Awesome tooling
Marko provides first-class support for the Atom editor with syntax highlighting, Autocomplete for both HTML and custom tags, Hyperclick to quickly jump to referenced files and methods, and Pretty printing to keep your code readable.
Community plugins also provide syntax highlighting for Sublime, VS Code, Webstorm & others!
View all editor pluginsRemarkoable performance across the board
Node.js(server)
Desktop Browsers(average)
Mobile Browsers(average)The color picker benchmark
This benchmark measures the time it takes to cycle through 133 colors. The selected color index changes every cycle. When the selected color index changes three things happen:
- The new selected color is highlighted
- The old selected color is unhighlighted
- The selected color's name is shown at the end
This benchmark measures how well a large render tree is optimized when only a few nodes actually need to be updated.
View the code on GitHub





