UI widgets

Terminal form

A contact form that reads like a console session: numbered lines, prompts that type themselves, choices printing in one after another, and a transmission log on send.

Underneath it is an ordinary <form> — real labels, real required, a real action. Every message is announced to screen readers, every step works from the keyboard, and if the script never loads the same markup still submits. Press H to hide the control panel.

01

Staged session

Six steps, one visible at a time until each is answered. Choices advance by themselves; typed answers advance on Enter or the confirm button. Switch the preset in the panel to rebuild the same markup as a wizard or a plain inline form.

session — contact
What can we do for you?

Select one or more.

What is the budget?
02

Built from a schema

The same engine, given a fields array instead of markup. It writes the labels, controls and steps, then enhances them. Handy for a form whose questions come from a CMS — pair it with the same fields rendered server-side and the no-script path stays intact.

session — callback
03

Without the script

This form is never handed to the engine — it is what a visitor gets when the script fails to load or is blocked. Same fields, same names, native validation, native submit. That is the whole progressive-enhancement claim, shown rather than asserted.

plain html — no engine
What can we do for you?