gramlot

Pre-alpha. First usable release planned for late 2026.

Widget gallery

passwordbox

A text input with masked characters.

Basic input

Type a sample password, then leave the field. This demo does not display or submit its value.

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 text input with masked characters."""

    def main(self, root):
        pane = root.div(datapath="field")
        pane.data(".value", 'sample')
        pane.passwordbox(
            value='^.value',
            lbl='passwordbox',
            width='100%'
        )

JavaScript

JavaScript recipe
export function build(root) {
  const pane = root.div({datapath: "field"});
  pane.data(".value", "sample");
  pane.passwordbox({
    value: "^.value",
    lbl: "passwordbox",
    width: "100%"
  });
}

This first example covers basic input and data binding. Additional options and edge cases will be added progressively.

Learn about binding in the tutorial →