zui docs v0.0.5
GitHub ↗
Ruby owns the whole experience

Native UI.
Ruby all the way down.

Build expressive desktop applications with state, events, animation, media, GPU effects, and 3D—without learning a second application language.

$gem install zui
telemetry_console.rb Native
SYSTEM OVERVIEWGood evening, Ruby.
● LIVE
RENDER FPS60steady
COMPONENTS241native
FRAME TIME7.2ms
Runtime connectedCatalog validated
STATE GPU
241native components
12catalog families
6,782property bindings
948native events
One coherent system

One Ruby API for complete desktop applications.

Zui keeps Ruby in control while Qt handles the native scene graph, input, media, and rendering pipeline.

01
Reactive state

Change Ruby.
Watch native UI respond.

Transactional state, computed bindings, and surgical protocol patches keep application logic direct.

02
Actually native

Qt controls.
No browser engine.

03
Complete catalog

Every registered primitive.

04
A Ruby-shaped API

The interface reads like the product.

Compose components, bind values, and handle events with ordinary blocks and objects.

card padding: 24 do
  label "Build status"
  text { state.status }
  button "Deploy" do
    state.status = "Live"
  end
end
Component reference

Start with the catalog.

View all 241 components →
Guides

Build your first native surface.

Follow the path from a blank Ruby file to state, events, layouts, animation, and effects.

Reference every component

Your next desktop app
can be all Ruby.

Browse all componentsView source ↗