Capability Matrices

Widgets and language support

A compact view of what Kryon supports through C, .kry lowering, Go generation, hand-written Go, and KRB cartridges. See the language reference for syntax and lowering rules.

Available Partial Missing Not applicable

Automated

Conformance Matrix

Generated from checked-in .kry examples, generated-runtime parity fixtures, and renderer evidence. The JSON backing this view is refreshed by tests/feature_matrix_docs_test.sh; source-pipeline and KRB visual cells are verified by make conformance-matrix-check, with renderer-specific gates listed below.

Loading generated matrix...

Pipelines

PipelinePathStatusEvidence

Renderers and Platforms

RendererPlatformApproachStatusEvidenceMatrix ScopeNotes

Renderer Smoke Gates

GateCommandScope

Visual Comparisons

Capture gates prove a renderer draws a nonblank frame. Comparison rows show whether that output is actually pixel-compared against another renderer.

PairModeStatusCompared SourcesKnown GapsEvidenceScope

Runtime Parity Gates

GateCommandScope

Downstream Consumer Gates

ConsumerCommandScope

Source Cases

Each source starts as .kry. Pipeline columns show lowering coverage; renderer columns show the strongest current evidence for that same source on each renderer/platform path.

SourceTypek2irk2ck2gk2jsk2bRenderersWidgetsState Evidence

Widget Coverage

WidgetStatusSourcesSource CasesState Evidence

Language

Pipeline Matrix

TargetProducerRuntimeStatus
Ck2ccc + libkryon.aProduction path; most complete
Gok2ggo/kryon native Go packageDeclarative subset with executable CI gate
JS/Webk2jsweb/kryon-runtime.js ESM recorder/presenterSyntax, Node recorder snapshots, and generated runtime state parity gated
KRB cartridgek2bKrbLoad/KrbExec on a KryBackendPortable widget subset; byte-exact renderer tests
KIRk2irInspection artifactDebugging and tooling only
FeatureCGoKRB
Theming6 palettes, light/dark, scopes, varsTheme control APIsTheme color slots
Style tokensRadius, border, shadow, style presetsGet/set token APINo token model
Text/fontsFallback fonts; no shaping, bidi, or IMEFont registry and input queuefont8x8 or KFA1 atlas
InputPointer, keyboard, clipboard; no IME/gamepad navKey, mouse, char APIsMouse, wheel, text-key queue
AccessibilityDebug a11y structs; no screen-reader bridgeNot exposedNot exposed
Dialogs/platformPortal, GTK, shell pickers, notifications, tray, XDGTray and notify pollingHost capability imports

Widgets

Widget Matrix

Columns: C is the public runtime API. k2c follows C because library calls compile as C-close statements. k2g, k2js, and KRB deliberately cover smaller subsets.

Display

WidgetCk2ck2gGoKRB
Background, Text, TextInRectYesYesYesYesNodes
Paragraph, TextLinesYesYesYesYesNot lowered
Rect, Line, BevelYesYesYesYesNodes
IconTexture114 iconsYesBy icon typeYesNot lowered
Image/PictureYesYesPicture propsYesEmbedded asset or PNG

Input

WidgetCk2ck2gGoKRB
ButtonYesYesButtonPropsYesButton control
IconButtonYesYesIconButton subsetSubsetNot lowered
Href / IconLinkYesYesHref onlyHref onlyNot lowered
TextField, TextAreaYesYesYesYesTextField only
DropdownYesYesNo rich option arraysYesDropdown control
Slider, Toggle, CheckboxYesYesYesYesControls
Radio, Progress, Spinbox, ComboboxYesYesYesYesSpinbox/combobox only
ColorPicker, InfoButtonYesYesNot exposedNot exposedNot lowered

Layout, Collections, Navigation

FamilyCk2ck2gGoKRB
Column, Row, StackYesYesYesYesStructural nodes
Scroll containerYesYesScroll/EndScrollYesScroll node
Notebook, PanedView, CollapsibleYesYesYesYesNot lowered
Canvas helpersYesYesCanvas helpersYesNot lowered
ListBox, SourceView, TableViewYesYesYesYesNot lowered
TreeView, CascadingTreeViewYesYesNot exposedNot exposedNot lowered
TabBar, BottomNav, TopNav, ToolbarYesYesMain controls onlyMain controlsNavButton as button
Modal, Toast, dialogsYesYesModal/toast/dialog subsetSubsetNot lowered

Caveats

Known Gaps