Coverage matrix

What each backend actually renders. A kind with no renderer draws a visible ⟨kind⟩ placeholder instead of failing, so these gaps are invisible in a screenshot — the showcase walkthrough asserts the same facts at runtime via assert_no_placeholders.

Built-in kinds

✓ = the backend’s realize handles it; · = it falls through to the placeholder.

kindappkituikitgtkqtxamlandroidarkuidom
day.container✓✓✓✓✓✓✓✓
day.label✓✓✓✓✓✓✓✓
day.button✓✓✓✓✓✓✓✓
day.toggle✓✓✓✓✓✓✓✓
day.slider✓✓✓✓✓✓✓✓
day.text_field✓✓✓✓✓✓✓✓
day.text_area✓✓✓✓✓✓✓✓
day.picker✓✓✓✓✓✓✓✓
day.divider✓✓✓✓✓✓✓✓
day.scroll✓✓✓✓✓✓✓✓
day.image✓✓✓✓✓✓✓✓
day.progress✓✓✓✓✓✓✓✓
day.canvas✓✓✓✓✓✓✓✓
day.nav✓✓✓✓✓✓✓✓
day.nav_page✓✓✓✓✓✓✓✓
day.nav_menu✓✓✓✓✓✓✓✓
day.list✓✓✓✓✓✓✓✓
day.tree✓✓✓✓✓✓··
day.cover✓✓✓✓✓✓✓✓
day.inspector✓·✓✓✓···
day.inspector_pane✓·✓✓✓···
day.split✓·✓✓····
day.split_pane✓·✓✓····
day.list_item✓✓✓··✓··

External pieces

✓ = the crate ships that backend’s renderer arm; · = no arm, so the kind renders the placeholder. A piece may still be absent at runtime if the app does not enable its feature.

A · is not always a gap: day-piece-colorpicker answers android and arkui with a picker COMPOSED from ordinary pieces, which by construction registers no renderer for its kind (colorpicker.md). This table measures arms, so it cannot see that — nothing derived from realize can.

piecekind(s)appkituikitgtkqtxamlandroidarkuidom
day-piece-activityday.piece.activity✓✓✓✓✓✓✓·
day-piece-colorpickerday.piece.colorpicker✓✓✓✓✓··✓
day-piece-comboboxday.piece.combobox✓·✓✓✓✓✓·
day-piece-datetimeday.piece.datepicker, day.piece.timepicker✓✓✓✓✓✓✓✓
day-piece-mapday.piece.map✓✓······
day-piece-pagerday.piece.pager·✓···✓✓·
day-piece-pullrefreshday.piece.pullrefresh·✓···✓✓·
day-piece-remote-imageday.piece.remote_image✓✓✓✓✓✓✓·
day-piece-searchfieldday.piece.searchfield✓✓✓✓✓✓✓·
day-piece-stepperday.piece.stepper✓·✓✓····
day-piece-swiftuiday.piece.swiftui✓✓······
day-piece-texteditorday.piece.texteditor✓✓✓✓✓✓✓✓

Capabilities

What each backend answers for Cap (capability()): N native, E emulated, – unsupported, ? decided at runtime (day-dom answers NavSplit from the viewport width; day-qt answers WindowTabbing natively on macOS alone). An app branches on this rather than on the target name.

capappkituikitgtkqtxamlandroidarkuidom
DragDropNNNNNNNN
DragExternalImportNNNNNNNN
DragExternalExportNNNNNNN–
DragMultipleItemsNNNNNNNN
DragFileReferencesN–NNN–––
DragDeferredReceipt––N–N–––
DragFilePromises––––––––
DragExternalMove––––––––
ListRecyclingNNNNNNNE
UndoBridgeNN––––––
EditBridgeNN–––––N
ListReorderNNNNNNNE
NavReorderN–NNN–NE
ListDelete–N––NNN–
ListSwipeActionsNN––N–––
ListEditing–N––––––
ListItemNNN––N––
TreeNNNNNEEE
TreeMoveN–––––––
TreeSectionsNNNNNNEE
BaselineAlignmentNENEENEE
TextRunsNNNNNNNN
TextLinksNNNNNNNN
Lottie––––––––
NativeSymbolsN–––––––
SnapshotNNNNNNN–
NavSplitNNNNNNNN
NavTabsNNNNNNEE
NavTabsAdaptive–N–––NEE
NavRepresentNE–N–EEN
NavContentListNENN––––
NavHeader–N––NNN–
AppearanceNNN–N??N
AppMenuN–NNN––E
DialogsNNNNNNNN
FileDialogsNNNNNNNN
AnimationNNNNNNNN
CoverENEEENEE
CoverSheetNN––––––
StatusBarHidden–N–––NN–
TextEditableNNNNNNEN
TextSelectableNN–NENEN
TextSpellCheckNN––NN–N
MultiWindowN?NNNN?–
AppBadgeCountNN??N–?E
AppBadgeTextN–––––––
AppBadgeDotN–––N––E
ToolbarNNNNNNEE
ToolbarSearchN–NNN––E
InspectorN–NNN–––
SplitN–NN––––
CursorNENEEN–N
FontListNNNNNNNE
ReduceMotionNNN–NN?N
AnnounceNN??NN?E
ImageDecodeNNNNNNNN
ImageEncodeNNNNNNNN
ImagePropertiesN–––––––
CanvasBitmapNNNNNNNN
CanvasPdfNNNN–N––
WindowStatesN–NNN–––
WindowFullscreenNENNNN??
ContentProtectionNE––NN?–
WindowTabbingN––?––––
DockMenuN–––––––
WindowGeometryN–NNN–––
WindowPositionN––?N–––
WindowLevelN––NN–––
WindowAppearanceNN––N––E
RequestAttentionN––NN–––
FramelessWindowN–NNN–––
OverlayTitleBarN–N–N––?
TransparentWindowN–?N––––
WindowMaterialN–––?–––
DragRegionN–NNN––?
StatusItemN–??N–––
AppProgressN–??N–––
DockVisibilityN–––––––
MonitorsNENNNEEE
DynamicShortcutsNN––N?––