Pre-alpha. First usable release planned for late 2026.
Widget gallery
numberTextBox
A numeric input.
Basic input
Enter a number and leave the field. The datastore receives a number.
lbl is optional: omit it for an input without a visible label. These examples use the default label placement; no lbl_position is required.
Python
Python recipe
from gramlot.page import WebPage
class Page(WebPage):
"""A numeric input."""
def main(self, root):
pane = root.div(datapath="field")
pane.data(".value", 12)
pane.numberTextBox(
value='^.value',
lbl='numberTextBox',
width='100%'
)
pane.p("Stored value:")
pane.pre("^.value")
JavaScript
JavaScript recipe
export function build(root) {
const pane = root.div({datapath: "field"});
pane.data(".value", 12);
pane.numberTextBox({
value: "^.value",
lbl: "numberTextBox",
width: "100%"
});
pane.p("Stored value:");
pane.pre("^.value");
}
This first example covers basic input and data binding. Additional options and edge cases will be added progressively.
gramlot