Pre-alpha · First usable release planned for late 2026.
Gramlot RosettaLesson 03 · First steps
Input widgets
Try text, number, date, time, checkbox and multiline inputs. Gramlot’s formlet arranges labelled widgets in two fixed columns; each widget binds to its own Data field. Text fields commit on focus out, and the checkbox commits when toggled. This lesson covers field layout and editing, without submission or persistence.
Example · NiceGUI
Code
How it works · NiceGUI
NiceGUI creates the input widgets inside a CSS Grid container. Blur callbacks copy values into a page-local dictionary, while the checkbox uses value binding. Date and time use native browser editors and are kept as strings in this example.
How it compares
Both provide Python-authored widgets, so widget availability is not a Gramlot advantage here. Gramlot combines Data-path binding and the default commit policy with a formlet layout. The displayed NiceGUI version uses a grid and explicit blur callbacks; those callbacks can be factored into reusable application code, but Gramlot’s scope and commit policy do not require that extra code.