20 breaking releases
Uses new Rust 2024
| 0.23.0 | Jun 9, 2026 |
|---|---|
| 0.21.0 | Jun 9, 2026 |
#80 in Accessibility
38 downloads per month
Used in 2 crates
39KB
455 lines
mobiler-ui
Mobiler's fixed UI wire ABI.
The stable contract between a Mobiler app's Rust core and its native shell:
- an app-agnostic
Widgettree (the ViewModel the core emits), - an
Actionprotocol (events the shell sends back), InputValueand style-token enums (TextStyle,Tone,Spacing, …).
Because these types never change per app, a single native shell is built once and renders any Mobiler app — it only ever knows these types, never an app's domain events or widgets.
The Widget vocabulary covers layout (rows/columns/grids/cards/scrollers, paged
lazy lists), inputs (text fields, toggles, segmented, search, rating), navigation
(scaffold + tabs + FAB + sheets, and a two-pane master-detail split), media (images,
avatars, a controllable video player, an embedded web view, an in-app PDF viewer,
and an interactive map), gestures (tappable cards with tap + long-press, swipe actions),
feedback (progress, skeleton), an inline calendar,
data-viz charts — Chart in eight styles (bar, line, stacked, 100%-stacked, pie, donut,
fitness-style progress rings, and a radial gauge) plus a variable-width stacked-region /
coverage-gap RegionChart — and an accessibility wrapper (a screen-reader label / hint /
role on any widget).
You usually don't depend on this crate directly. Use
mobiler-core, which re-exports it and
provides the MobilerApp trait plus the typed widget builders.
License
Dual-licensed under either MIT or Apache-2.0, at your option.
Dependencies
~5MB
~99K SLoC