📄️ Text Input
TextInput renders a single‑line edit box and returns the current text.
📄️ Text Area
TextArea is a multi‑line text box—perfect for comments, descriptions, or code snippets.
📄️ Button
Button renders a clickable button. When the user presses it the client sends a RerunPage message, the page is re‑executed, and the call returns true for that single run. On the next run the value automatically resets to false.
📄️ Number Input
NumberInput captures a numeric value (floating‑point). It supports min/max validation and placeholder text.
📄️ Checkbox
Checkbox is a single true/false toggle. It is ideal for opt‑in terms\, feature flags\, or any binary decision.
📄️ Select
Selectbox shows a dropdown where the user picks exactly one item.
📄️ Multi Select
MultiSelect renders a dropdown that lets users pick zero or more items.
📄️ Date Input
DateInput shows a calendar picker and returns the selected date.
📄️ Date Time Input
DateTimeInput combines a calendar and clock picker. It returns the full timestamp the user chose.
📄️ Time Input
TimeInput lets users pick a time of day using a clock‑style picker. It returns a time.Time whose date part is zeroed* (00‑01‑01) and whose location is whatever you pass in WithLocation (defaults to time.Local).
📄️ Table
Table renders arbitrary slice/array data in a scrollable grid. It supports column re‑ordering, paging (via Height) and row selection.
📄️ Markdown
Markdown renders static content written in GitHub‑flavoured Markdown. Use it for headings, lists, links, call‑outs, or any other rich text that doesn’t require user interaction.
📄️ Checkbox Group
CheckboxGroup renders a list of checkboxes that share a single label. Users can tick any number of options; the selection is sent back on every RerunPage and stored in session state.
📄️ Radio
Radio renders a mutually‑exclusive choice set. Users can select exactly one option.
📄️ Form
Form groups several widgets, adds a submit button, and returns whether the user just pressed it.
📄️ Columns
Columns lets you split the page into n vertical blocks and build each block with its own UIBuilder.