User Interface Design
Core concepts
Appian interfaces are built from SAIL components (layouts, grids, cards, buttons, text fields). Understand interface inputs, local variables, saveInto bindings, and validation (required, validation groups, submit buttons). Know dynamic behavior: show/hide via showWhen, refresh via refreshVariable, and conditional styling.
Layout and responsiveness
Understand columns, panes, and responsive breakpoints. Know how grids handle paging, selection, and inline editing. Be comfortable with record views and record actions as UI constructs tied to record types.
Traps
- Using
saveIntoon a component that doesn't support it, or forgetting to save a value before it's read. - Assuming
showWhenhides but still evaluates - hidden components may still run expressions unless guarded. - Confusing interface input (passed in) with local variable (internal state).
- Forgetting that validation groups must be tied to a submit button to block submission.
Worked rule of thumb
For dependent fields (e.g., a dropdown that filters a second dropdown), bind the first to a local variable with saveInto, and use refreshVariable or a dependent expression so the second recomputes. Guard expensive expressions so they don't run when the component is hidden.