Reference index
These reference pages are published from the repository’s docs/ directory. They cover API
details, platform support, implementation decisions, and edge cases. Start with the task guides
for usage examples, or use the Glossary to look up framework terminology.
Core & UI
Framework-level UI: navigation, lists, layout containers, drawing, text, and the cross-cutting concerns every app touches.
| Page | Covers |
|---|---|
| text | labels, fonts, semantic styles, wrapping |
| text-runs | styled runs inside one label |
| markdown | inline Markdown in labels |
| buttons | button styles per backend |
| navigation | nav host/stack mapping per platform, routes |
| deep-links | custom URL schemes, delivery, launcher shortcuts |
| dialogs | alert/confirm/prompt, native presentation, results |
| menus | app menu bar, context menus, roles and shortcuts |
| toolbars | window toolbars: the item vocabulary, symbol icons, per-desktop realization |
| windows | secondary windows, the Preferences window, the cover fallback |
| window-image | capturing the app’s own window as a PNG |
| grid | the eager grid: rows, spans, flexible columns |
| forms | form/section/labeled groupings |
| baseline | baseline alignment across toolkits |
| size-classes | size classes and navigation re-presentation |
| scroll | scrolling and programmatic scroll targets |
| search | searchable() surfaces per platform |
| cover | fullscreen covers and dismissal control |
| inspector | the trailing properties pane: native splits, the compact sheet |
| focus | keyboard focus as a signal: bindings, rules, per-backend map |
| cursor | the pointer’s shape over a piece: one vocabulary, per-toolkit realization, toolkit-only extras |
| list | the native recycling list: row protocol, heights, selection |
| tree | the hierarchical tree: nesting, expansion, drag-to-reparent (plan) |
| canvas | the canvas display list and gestures |
| fonts | the platform font list, canvas fonts, and text measurement |
| shapes | canvas drawing, shape pieces, gestures |
| progress | determinate bars and spinners |
| picker | the built-in one-of-N picker: menu, segmented, and inline styles |
| textarea | multi-line text: editing, selection, spell-check |
| texteditor | day-piece-texteditor — editing a StyledText in each platform’s rich-text view |
| localization | Fluent mechanics, arguments, fallback |
| accessibility | roles, per-backend attribute mapping, the audit |
| lifecycle | app phases and their per-platform availability |
| async | tasks, resources, and the runtime rules |
| state | where state lives: per-window and app-wide Ambient values, the focused-window rule |
| model | the per-property observable store and the Observable derive |
| persistence | SQLite storage for the model: ModelContainer, the Model derive, migrations |
| resources | asset packaging and the zero-copy runtime path |
| vectors | resolution-independent SVG glyphs and the vector piece |
| images | raster images from bytes: decode, draw, read, and write back out |
| color | the Color/Paint currency, what a native picker returns, and a proposal to widen it |
| icons | day icon build: every platform’s app-icon set from one master |
| drag-and-drop | native data transfer within and between applications |
| drag-and-drop-plan | transfer architecture, platform constraints, and implementation plan |
| files | file I/O and platform paths |
Pieces
Standalone UI Pieces: native widgets that live in their own crates and plug in without any core changes.
| Page | Covers |
|---|---|
| swiftui | day-piece-swiftui — embed your own SwiftUI views (macOS, iOS) |
| webview-eval | web view JavaScript evaluation: API and per-platform support |
| map | day-piece-map — native maps |
| media | day-piece-media — audio/video playback |
| combobox | day-piece-combobox — free-form text plus a native dropdown |
| searchfield | day-piece-searchfield — the search input |
| activity | day-piece-activity — activity spinners |
| pullrefresh | day-piece-pullrefresh — pull-to-refresh for scrollables |
| datepicker | day-piece-datetime — native date & time pickers |
| colorpicker | day-piece-colorpicker — a color well: the platform chooser, or one Day composes |
| stepper | day-piece-stepper — a numeric field with increment/decrement arrows |
| badge | app-icon numeric badge (proposed) |
| tweaks | per-toolkit native configuration: accessors, packaged tweaks, recipes |
Parts
Headless capability crates, the non-UI counterpart of Pieces. They provide device and system access without any widgets.
| Page | Covers |
|---|---|
| battery | day-part-battery |
| clipboard | day-part-clipboard |
| prefs | day-part-prefs |
| fs | day-part-fs |
| notify | day-part-local-notify (proposed successor design) |
| network | day-part-network |
| sensors | day-part-sensors |
| haptics | day-part-haptics |
| sound | day-part-sound |
| wakelock | day-part-wakelock |
| deviceinfo | day-part-deviceinfo |
| http | day-part-http |
| downloads | day-part-downloads |
| permissions | day-part-permissions |
| location | day-part-location |
Platform & tooling
Platform backends, the extension model for writing your own Pieces, per-backend support matrices, API conventions, and tooling.
| Page | Covers |
|---|---|
| sandbox | macOS App Sandbox, entitlements, and persistent file access |
| harmonyos | OpenHarmony toolchain setup and quirks |
| web | the web-dom backend — wasm build, dayscript bridge, static hosting |
| extending | piece registration internals |
| bridge | daybridge: foreign-language arms of a Rust API |
| coverage-matrix | which piece kinds each backend renders (generated, CI-gated) |
| duty-matrix | which backend implements which Toolkit duty (generated, CI-gated) |
| recorder-matrix | event → recorded dayscript step coverage (generated, CI-gated) |
| logging | the log facade, levels, per-platform sinks, DAY_LOG, custom loggers |
| break | day-piece-break crash capture, reports, and delivery |
| store | store listings and day store |
| flavors | Day-<name>.toml and --flavor: one source tree, several shipped apps |
| agent | dayscript sessions, day drive, and the agent-facing tooling |
| api-style | the API design conventions Day itself follows |
| vscode | editor setup |
| environment | toolchain/SDK discovery env vars (DAY_CPPWINRT, DAY_WINDOWS_KITS_ROOT, …) |
Related projects
The web view piece and Day Lite, for embedded JavaScript and TypeScript apps, have their own repositories and documentation.