Introduction
OlumJS is a small, Vue/React-inspired UI framework. You write components as plain .html files with a <script>, a <style>, and template markup; a compiler turns each one into a JavaScript module. The template language is deliberately native-HTML-friendly: no naked {} in attributes, and HTML formatters/linters work on your files unchanged.
The one rule
Everything lives inside "": when / each / key / on* / html hold a JS expression; props and all other attributes are literal strings with {expr} inside for dynamics; and text is {expr}, auto-escaped.
| Bucket | Attributes | Inside "" |
|---|---|---|
| Code | when, each, key, on* (events), html | a JS expression |
| String | class, style, title, href, id, props, … | a literal string; {expr} interpolates dynamics |
| Text | element text content | {expr}, auto-escaped |
Where to go next
Get Started
Scaffold your first OlumJS app in one command.
Component File Structure
Learn how .html component files are structured.
State & Reactivity
Understand how state drives re-renders.
Quick Reference
A cheat-sheet of all template syntax.
Live Sandbox
Try OlumJS instantly in your browser — no install required.
Olum UI
Copy-paste components, styled and ready to own.