Skip to content
Development
Skill

/ui-spec

Guidelines and procedures for creating comprehensive UI Specifications from PRDs and prototypes.

From plugin
software-development-department
74116 skills28 agents1 MCP

Claude Code

$ npx -y skills add tranhieutt/software_development_department --skill ui-spec --agent claude-code

SKILL.md

ui-spec.SKILL.md
name: ui-spec
type: workflow
description: "Guidelines and procedures for creating comprehensive UI Specifications from PRDs and prototypes."
user-invocable: true
allowed-tools: Read, Glob, Grep, Write
effort: 3
argument-hint: "[prd, prototype, or feature name]"
when_to_use: "Use when translating a PRD, prototype, or feature brief into a concrete UI specification with components, states, and interactions."

Skill: /ui-spec

Use this skill when moving from a PRD (Requirements) to a technical UI design. This skill bridges the gap between wireframes and code.

The UI Spec Lifecycle

1. Analysis Phase

  • **Map ACs**: Map every Acceptance Criterion from the PRD to a UI screen or interaction.
  • **Prototype Ingestion**: If prototype code exists (e.g., from `prototyper`), read it to understand components and states.

2. Decomposition Phase

  • Define the **Component Tree**.
  • Identify which components can be reused from the existing codebase vs. which need to be new.

3. Specification Phase

Fill out the `ui-spec-template` including:

  • **State Matrix**: Explicitly define what the user sees during `Loading`, `Error`, and `Empty` states.
  • **Interactions**: Use EARS format (Condition-Trigger-Response) for all interactive elements.

4. Integration Phase

  • Link the UI Spec in the feature's [Design Doc].
  • Use the UI Spec as the checklist for the `frontend-developer`.

The State x Display Matrix

Every component MUST define behavior for these 5 states: 1. **Default**: The "Happy Path". 2. **Loading**: Bone skeletal screens or spinners. 3. **Empty**: Context-aware messages when no data exists. 4. **Error**: User-friendly error messages with recovery actions (Retry/Reset). 5. **Partial**: Behavior when some data is missing or loading.

Accessibility (A11y) Rules

  • Every interaction must have a keyboard equivalent.
  • Every interactive element must have an ARIA role and label.
  • Color contrast ratios must meet WCAG 2.1 Level AA (4.5:1 for normal text).

Output

Save UI spec to `design/specs/ui-[feature-name].md`:

\`\`\`markdown

UI Spec: [Feature Name]

Component Tree

[Hierarchical list of components]

State Matrix

| Component | Default | Loading | Empty | Error | Partial | |-----------|---------|---------|-------|-------|---------|

Interactions

[Component] -> [Trigger] -> [Response]

Responsive Behavior

[Breakpoint-specific layout changes]

Accessibility

[Keyboard nav, ARIA labels, contrast requirements]

Open Questions

[Items needing design decision] \`\`\`

Related Skills

  • `design-review` — review implemented UI against spec
  • `frontend-design` — aesthetic direction and design system
  • `design-system` — reusable component library
  • `review-spec` — general spec review workflow
Read more
@tranhieutt
Ships withsoftware-development-department

Software Development Department

74116 skills28 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
74
Star history of tranhieutt/software_development_department on GitHub, a chart by star-history.com

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills13d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react4d252k
@facebook@facebookInstall Skill

Questions about ui-spec.

Which coding agents can use ui-spec?
ui-spec installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.