Key Features
Apps are readable documents, not opaque binaries. View source, inspect handlers, understand before you run.
Explicit Policy
Permissions declared in metadata, visible before execution. No hidden capabilities.
Run from URL
Share apps via URL. Remote apps require policy and user approval.
Flexbox Layout
Modern layout with flex, gap, padding. CSS-like styling with 16 million colors.
Rich Components
Tables, dialogs, forms, canvas graphics, video playback, OAuth flows.
Dev Tools
Press F12 to inspect source, policy, and system info at runtime.
No Build Step
Write markup, run immediately. No compilation, no bundling, no waiting.
Examples
Quick Start
Create a hello.melker file:
<melker>
<policy>
{
"name": "Hello App",
"permissions": {}
}
</policy>
<container style="border: thin; padding: 1;">
<text style="font-weight: bold;">Hello, Terminal!</text>
<button label="Exit" onClick="$melker.exit()" />
</container>
</melker>
Run it:
./melker.ts hello.melker
Installation
Clone the repository
Melker is distributed via git. No package managers required.
git clone https://github.com/wistrand/melker.git cd melker
Run an example
Requires Deno 2.5+. Node.js and Bun are not supported.
./melker.ts examples/melker/hello.melker
Optional: Install globally
Create a symlink to run from anywhere.
ln -s $(pwd)/melker.ts ~/.local/bin/melker
Releases
Melker uses CalVer (YYYY.MM.PATCH). Releases are git tags.
# List available releases git tag --list 'v*' | sort -V # Checkout a specific release git checkout v2026.01.1