Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Object guide

Use this page when you know what you want to build but not which Kael object to reach for.

Application objects

ObjectPurposeUse it for
ApplicationStarts and owns the runtimeProcess startup and the main event loop
AppAccesses application servicesWindows, tasks, files, clipboard, and global state
WindowHandles one rendered surfaceFocus, input, drawing, and window operations
WindowOptionsDescribes a new windowSize, title, appearance, and placement
CapabilityReportReports platform supportChoosing a native path or a portable fallback

State and rendering

ObjectPurposeUse it for
Entity<T>Owns reactive application stateModels that outlive one render call
Context<T>Reads and updates an entityListeners, notifications, tasks, and child entities
RenderTurns state into elementsViews with retained state
RenderOnceTurns a value into elements onceSmall value components and builders
IntoElementConverts a value into a UI elementReturn types from render methods
SubscriptionKeeps an event listener aliveObserving entities, windows, and application events
FocusHandleIdentifies a focus targetKeyboard input and focus movement

The normal update path is:

input → entity.update(...) → cx.notify() → Render → retained scene → platform renderer

Layout and components

Object or functionPurposeUse it for
div()Creates the base layout elementFlex, grid, spacing, color, borders, and children
StyledAdds style methodsSize, alignment, typography, and visual state
kael_ui::initRegisters the component systemAny app that uses kael_ui controls
ThemeHolds component design tokensProduct colors, type, radius, and density
Button, Input, SelectReady made controlsCommon interactive UI
AppShellCreates an application frameSidebars, toolbars, and main content

Large data and graphics

Object or functionPurposeUse it for
uniform_listVirtualizes equal height rowsLogs, feeds, and simple tables
listBuilds a measured listRows with variable height
VirtualListAdds higher level virtual list behaviorProduct lists using kael_ui
VirtualSheetGridVirtualizes rows and columnsSpreadsheet surfaces
canvasRuns custom retained drawingCharts, whiteboards, and editors
SceneStores platform render primitivesLow level retained output
PortableScene2dDescribes portable 2D scene dataGame and simulation foundations

Async, files, and web content

ObjectPurposeUse it for
Task<T>Represents scheduled async workFetching, parsing, saving, and delayed updates
BackgroundExecutorRuns work away from UI renderingCPU work that should not block a frame
ExternalFileCarries a file name, type, and bytesPortable open and drop workflows
PrintJobDescribes printable contentNative print dialogs and browser printing
WebViewHosts a web owned surfaceCompatibility islands and existing web products

Start with Application, one root Entity, and a Render view. Add services only when the feature needs them. See Core concepts for the working code and One codebase for platform boundaries.