Skip to main content

Search rules

Search all UI Guides rules by name, category, or source

formsVercel

Submission Rule

MUST

MUST: Keep submit enabled until request starts; then disable, show spinner, use idempotency key

Keep submit button enabled until submission starts, then disable with loading state

Bad

Good

Why it matters

Pre-disabling submit buttons prevents users from discovering validation errors. Let them try to submit, then show what needs fixing. Once submission starts, disable the button and show a loading indicator to prevent double submissions. Use idempotency keys on the backend to handle accidental duplicate requests.

References

Built by Gleb Stroganov, design engineer at Evil Martians.

The rules come from other people's skills and guidelines — Vercel, Rauno Freiberg, @Ibelick, impeccable, Emil Kowalski, Tailwind, RAMS — each one credited on the Sources page. The work here is extraction and wiring: every rule is pulled into one corpus, given a good and a bad example you can operate, a MUST/SHOULD/NEVER rule an agent can paste, and a link back to where it came from.