Modal Forms for Quick Actions
Not every form deserves its own page. Creating a quick note on a record, logging a time entry, adding a task — these are small actions that should feel small. Opening a full-page form for a five-second interaction introduces unnecessary navigation and breaks the flow of work.
Modal forms make quick actions feel appropriately lightweight.
Open, Act, Close
A modal form opens as an overlay on top of the current page. The form is fully functional: fields are editable, validation runs, and the save action completes the operation. After saving, the modal closes automatically and the underlying page refreshes to reflect the new or updated record.
The navigation cost is a single click to open and a single action to complete. No page transition, no back button, no "where was I?" moment after returning.
Pre-Filled from Context
Modal forms inherit context from the page they open on. A "Log Call" modal opened from a contact record pre-fills the contact relation. A "Create Task" modal opened from a project pre-fills the project. An "Add Item" modal opened from an order pre-fills the order relation.
The form knows where it was opened from and fills in the obvious values. Users only need to enter what's unique to this specific record.
Validation and Error Handling
Modal forms behave exactly like full-page forms for validation. Required fields are enforced. Option values are checked. Custom validation rules run before save. If validation fails, errors appear inline within the modal and the form stays open for correction.
There's no validation loss from using modal presentation — the same rigor applies.
Configuration in the Builder
Any form can be configured to open as a modal. In the builder, a button or link component that navigates to a form has a "open as modal" option. Toggle it, and the navigation becomes a modal trigger instead. The form definition itself doesn't change — the same form works both as a full page and as a modal.
This means switching an action from full-page to modal (or back) is a single configuration change, not a separate form to build.
Nesting with Care
Modal forms can themselves contain components that trigger further modals — useful for picking a related record while filling out a form, for example. Nesting beyond two levels isn't recommended: it quickly becomes disorienting. The builder allows it but the experience design should keep depth minimal.