arkui
The ui every app here shares, by component: iced components, the vim keyboard, theming, the glyph table, a picture cache and the address bar — and nothing of any app.
Each page says how to use a component on the desktop, where every picture is the arkui component itself, drawn by the renderer the apps use, and on a phone, Android or iOS, with the latest capture from a real emulator and simulator in a frame of that device.
This is the one place the components are described. An agent working on an app reads the page for the part it needs; one that changes a component changes its entry in docs/site/src/components.rs (and the module's in catalogue.rs, its pictures in examples.rs) in the same commit, and the tests fail until it does. Other sites pull catalogue.json, published beside this page.
25 components over 33 arkui modules, and 14 captures from the phones. j and k walk the pages.
Components
| Component | Section | Desktop | Android | iOS |
|---|---|---|---|---|
| Theme | Foundations | arkui::theme | yes | yes |
| Style | Foundations | arkui::style | — | — |
| Icons | Foundations | arkui::glyphs, arkui::icon | yes | — |
| Text | Foundations | arkui::fit, arkui::line, arkui::format, arkui::clipboard | — | — |
| Art | Foundations | arkui::art, arkui::images | yes | yes |
| Navigation | Components | arkui::sidebar | yes | — |
| Lists | Components | arkui::table, arkui::outline | yes | — |
| Reorderable list | Components | arkui::reorder | yes | yes |
| Cards | Components | arkui::cards | yes | — |
| Headers | Components | arkui::hero | yes | — |
| Empty states | Components | — | yes | — |
| Account and sign-in | Components | arkui::account | yes | — |
| Slider | Components | — | yes | — |
| Menu | Overlays | arkui::menu, arkui::context, arkui::panel | yes | — |
| Command box | Overlays | arkui::command | — | — |
| Picker | Overlays | arkui::picker | — | — |
| Dialog | Overlays | arkui::dialog, arkui::sheet, arkui::layer | — | — |
| Expanding card | Motion | — | yes | yes |
| Glass | Motion | — | yes | yes |
| Page motion | Motion | arkui::swipe, arkui::history | yes | — |
| Springs | Motion | arkui::motion | yes | yes |
| Scroll | Motion | arkui::scroll | yes | yes |
| Keys | Behaviour | arkui::vim | — | — |
| Routes | Behaviour | arkui::route, arkui::url | yes | — |
| Waking | Behaviour | arkui::wake | yes | — |