Skip to main content
skill CX Codex

form-design · owl-listener — Claude Code skill: what it does, how to install

Designs forms end to end, covering field order, grouping, validation, and accessibility. Useful when building anything from single inputs to multi-step flows.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add Owl-Listener/designer-skills --skill form-design -a claude-code
Open on GitHub

What form-design does

The skill enforces strict layout and UX rules for form interfaces. It favors single-column layouts and top-aligned persistent labels over disappearing placeholder text. Field widths match expected input lengths. Input selection follows fixed rules: radio buttons handle up to 5 options, while dropdowns take over for 6 or more items. Structured dates always require date pickers or segmented fields rather than unformatted text inputs.

Validation happens on blur rather than keystroke by keystroke. Error messages sit directly beneath the problematic field and explain how to fix the input. For multi-step forms, the skill sets up step indicators and prevents data loss on backward navigation. It also includes review screens for high-stakes flows.

Using placeholder text as the only label breaks accessibility and hurts usability. This makes persistent labels non-negotiable here.

What it helps with

  • organize field hierarchy and grouping in complex forms
  • configure inline validation on blur with clear error messages
  • select input components based on option counts and data types
  • ensure form accessibility with aria attributes and logical focus order

Example prompts for the agent

  • Design a multi-step checkout form with progress indicators and blur validation
  • Review this profile form layout and replace unformatted inputs with appropriate controls

How to install form-design

1Skills CLI (Vercel)

npx skills add Owl-Listener/designer-skills --skill form-design -a claude-code

2Manually: put the files in place

~/.claude/skills/form-design/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/form-design/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about form-design

How to install form-design in Claude Code?

Run npx skills add Owl-Listener/designer-skills --skill form-design -a claude-code. You can also place the configuration file into ~/.claude/skills/form-design/SKILL.md.

What does form-design do?

It provides design rules for form layouts, input types, validation timing, and multi-step progression. The focus is on reducing drop-off and preventing input errors.

When should I use error-handling-ux instead of form-design?

Use error-handling-ux when defining an error handling strategy across an entire product. Use form-design when working specifically on the form artifact itself.

Source text

SKILL.md · MIT
---
name: form-design
description: Design a form end to end — field order, grouping, validation, and completion. Use when the artifact is a form. For product-wide error strategy use `error-handling-ux`; for first-run signup use `onboarding-design`.
---
# Form Design
You are an expert in designing forms that are clear, forgiving, and efficient to complete.
## What You Do
You apply form design principles to reduce abandonment, prevent errors, and make data collection feel effortless — from single-field inputs to complex multi-step flows.
## Layout
- **Single column**: almost always correct for forms. Two-column layouts disrupt reading flow and create ambiguity about field order.
- **Field width should reflect expected input length**: a postcode field is narrow; a bio field is wide. Width is a affordance for what belongs there.
- **Top-aligned labels**: faster to scan and more resilient to long labels than left-aligned or placeholder-only patterns.
- **Group related fields** using proximity (Law of Proximity) and section headings for longer forms — don't let long forms run as an undifferentiated column.
## Labels and Instructions
- Every field has a persistent label — never rely on placeholder text as the only label (it disappears on input and fails accessibility)
- Labels are concise and in sentence case; avoid ALL CAPS
- Helper text goes below the label, above the field: "Format: DD/MM/YYYY"
- Required fields: mark optional, not required — if most fields are required, flagging optional reduces visual noise
- Character counts: show remaining characters when limits exist; show them always, not only on approach to the limit
## Input Types
Match input type to the data being collected:
| Data type | Input type |
|---|---|
| Short text | Text input |
| Long text | Textarea (with visible resize) |
| One from few options (≤5) | Radio buttons (all visible) |
| One from many options (6+) | Select / combobox |
| Multiple from few options | Checkboxes |
| Date | Date picker or segmented inputs (day/month/year) — never a freeform text field for structured dates |
| Phone / card numbers | Formatted text input with masking |
| Password | Password input with show/hide toggle |
## Validation
- **Inline validation**: validate on blur (when the user leaves the field), not on every keystroke — real-time validation on typing is distracting
- **Error placement**: directly below the field, not at the top of the form
- **Error messages**: explain what went wrong and how to fix it — "Email address must include @" not "Invalid email"
- **Success indication**: a subtle indicator (checkmark) on fields with non-obvious correctness (password strength, username availability)
- **Server-side errors**: surface inline to the field if possible; summarize at the top if multiple fields are affected
## Multi-Step Forms
- Show progress clearly (step indicator, not just "Step 2 of 5")
- Each step should feel completeable as a unit — related questions together
- Allow back navigation without losing data
- Save progress for long forms (auto-save or explicit "save and continue")
- Confirm before discarding partial input
## Accessibility
- Every field has a programmatic label (`<label for>` or `aria-label`)
- Error messages are associated with their field (`aria-describedby`)
- Focus order follows visual order
- Error summary at top is keyboard-focusable and links to each field
- Don't use color alone to indicate required or error states
## Best Practices
- Remove every optional field you can — fewer fields = higher completion
- Default to the most common answer where one exists; don't default to blank for binary choices
- Test forms with real users entering real data — synthetic test data hides length and format edge cases
- Measure field-level abandonment (which fields do users leave the form on?) — this is where to invest optimization effort
- For high-stakes forms (payments, medical, legal), add a review step before final submission

© Owl-Listener · MIT · Owl-Listener/designer-skills

Similar skills

Everything for Design →

form-design by other authors comes first.

From the same set109

stakeholder-alignment Builds alignment artifacts: a stakeholder map, RACI matrix, decision rights and a communication plan. Useful when unclear ownership stalls decisions. CX Codex +1 2,000installs metrics-definition Defines UX metrics and KPIs that connect design decisions to measurable outcomes. Useful when deciding what to measure before tracking changes. CX Codex +1 2,100installs diary-study-plan Walks you through designing a diary study: prompts, cadence, duration, participant criteria and an analysis frame. CX Codex +1 2,100installs a-b-test-design Walks you through planning an A/B test: hypothesis, variants, primary metric and sample size. Useful when a change can be measured quantitatively. CX Codex +1 2,100installs aesthetic-usability Applies the Aesthetic-Usability Effect when visual polish affects perceived ease of use and trust. Use it to diagnose functional designs that still make a poor first impression. CX Codex +1 1,900installs information-architecture A skill that designs content structure: sitemap, navigation model, taxonomy and content types. Useful when you need to organise what already exists. CX Codex +1 1,900installs critique-composition Critiques balance, negative space, visual rhythm, and gestalt grouping on rendered screens. Useful when layout hierarchy is solid but the spatial composition still feels off. CX Codex +1 1,900installs service-blueprint Maps how a service is delivered to users and behind the scenes. Use it to trace gaps between visible interactions, operations, and supporting systems. CX Codex +1 1,800installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor