Declarative UIs for embedded devices
kadokit is a UI kit for building interfaces on constrained hardware. Describe your UI in its declarative DSL: reactive state, reusable components, and animated transitions. Iterate live on desktop, then compile to a compact binary for the device.
Reactive by default
One way and two way data bindings with JavaScript style expressions. Change the state, and every bound widget updates without glue code.
Typed components
Reusable components with typed props, content slots, outward signals, and state per instance. Compose entire screens from small parts.
Animation as a property
Attach tween easings or spring physics to any bound property, or orchestrate staggered motion groups across a whole grid of widgets.
Multi screen navigation
Named screens with typed parameters, lifecycle hooks, transitions, and a history stack. Screens are built lazily for fast startup.
Made for firmware
A small C++ API bridges device code and UI: sensor state protected from UI writes, registered commands, batched updates once per frame.
Fails at load, not in the field
Bindings, component references, and assets are validated when the document loads. Diagnostics include suggestions for likely names.