A3S GUI
A3S GUI
Rust-native GUI renderer for RSX function components and native platform command streams.
A3S GUI
a3s-gui is the native UI renderer prototype for A3S applications. It accepts
Rust-style .rsx function components backed by Rust hooks and lowers them
into a compact native UI IR that platform adapters can render without a WebView.
The current local crate is a3s-gui 0.1.0. Its repository metadata points to
A3S-Lab/GUI.
In the current monorepo worktree, crates/gui exists but is not tracked in
.gitmodules. Treat this page as documenting the present local project shape,
not a published submodule contract.
Capability Map
| Area | Current capability |
|---|---|
| Authoring model | ComponentCx Rust hooks, Rust-style .rsx function components, DOM-style props, inline style strings, aria/data attributes, and named event actions. |
| Native IR | Accessibility-first tree of native roles, state, labels, values, style tokens, events, and children. |
| Runtime | GuiRuntime, keyed renderer diff engine, action registration, event routing, and headless recording backend for validation. |
| Command stream | Serializable native commands such as create, update, insert child, remove, and set root. |
| Platform planning | AppKit, WinUI, and GTK planning adapters map the IR to native widget blueprints. |
| Native paths | Feature-gated AppKit, WinUI, and GTK native adapter paths are present in the crate manifest. |
| Design system | rsx_ui provides shadcn-like RSX components backed by Vercel/Geist design tokens. |
Start Here
- Architecture explains the RSX-to-native pipeline, host boundary, command stream, and style contract.
- Platforms maps supported semantic parts to AppKit, WinUI, and GTK planning/native backends.
- Protocol And Events covers
UiFrame,NativeProtocolSession, host events, action routing, and native input flow.
Boundary
A3S GUI is different from A3S WebView. WebView renders web content in an embedded browser. GUI renders RSX semantic UI directly as native controls.