mobiler-core
Mobiler's runtime — the developer-facing API.
Implement MobilerApp with your typed events, model, and a view built from the
widget builders. Mobiler wraps it in MobilerShell,
a Crux app speaking the fixed UI ABI
(mobiler-ui) — so the native shell stays
generic and you never touch the wire protocol.
pub type App = ;
- Capabilities via
Cx— device APIs as async effects, reached through typed helpers inupdate/input. Built in: HTTP (cx.get/post/patch/delete), storage (cx.save+restore), clipboard (cx.copy), share (cx.share), browser (cx.open_url), toast (cx.toast), device info (cx.device_model), haptics (cx.haptic), and a confirm dialog (cx.confirm). Each is an opaque{plugin, op, input}effect, so adding one never changes the wire ABI; the generic shell fulfils them natively on Android, iOS, and the web. - Navigation — a core-owned
Nav<Route>stack +nav_scaffold. - Theme-as-data — dark mode etc. flow through the
Widgettree.
Most users go through the mobiler CLI, which
scaffolds a project wired to this crate and a generic native shell.
License
Dual-licensed under either MIT or Apache-2.0, at your option.