Skip to content
All guides

systems

Optional: native Windows UI (Lumen)

Lumen is an optional native window for operator tools on Windows. It is not the point of Buraaq. Use it when a local console is better than a browser: talking to a Keel API or a JSON file.

use std.lumen.{app, heading, note, field, button, keep, show}

fn main() {
    app("Desk", 1080, 760)
    heading("Desk")
    note("Notes on this machine.")
    field("title", "Title")
    field("body", "Note")
    button("create", "Save")
    keep("desk.json")
    show()
}
buraaq new desk --ui
cd desk
buraaq run

API (call before show())

FunctionRole
app(title, width, height)Window
heading / noteTitle lines
field(id, label)Text field
button(id, label)Action
bind(url, resource)Keel REST {url}/api/{resource}
keep(path)Local JSON instead of a server
show()Loop until close

Limits in this runtime: 48 widgets, 64 rows, one window. Flat teal, Segoe UI, per-monitor DPI.

OSStatus
WindowsNative Win32 + GDI
Linux / macOSCompiles; blit backend not wired yet

This is a first native surface, not a design-system kit. For servers and shipping, leave this page and go to Servers.