wireframing
Wireframing and prototyping workflow: fidelity levels (lo-fi sketch → mid-fi wireframe → hi-fi prototype), tool selection (Figma, Excalidraw, Balsamiq), user flow diagrams, wireframe annotation standards, information architecture (IA) mapping, and the handoff from wireframe to visual design. For developers who need to communicate UI structure before writing code.
Best use case
wireframing is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Wireframing and prototyping workflow: fidelity levels (lo-fi sketch → mid-fi wireframe → hi-fi prototype), tool selection (Figma, Excalidraw, Balsamiq), user flow diagrams, wireframe annotation standards, information architecture (IA) mapping, and the handoff from wireframe to visual design. For developers who need to communicate UI structure before writing code.
Teams using wireframing should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/wireframing/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How wireframing Compares
| Feature / Agent | wireframing | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Wireframing and prototyping workflow: fidelity levels (lo-fi sketch → mid-fi wireframe → hi-fi prototype), tool selection (Figma, Excalidraw, Balsamiq), user flow diagrams, wireframe annotation standards, information architecture (IA) mapping, and the handoff from wireframe to visual design. For developers who need to communicate UI structure before writing code.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Wireframing Skill
## When to Activate
- Planning a new feature before writing any UI code
- Communicating UI structure to a designer or stakeholder
- Mapping the user flow for a multi-step feature
- Reviewing whether a layout decision makes sense before investing in it
- Converting requirements into a visual structure
---
## Fidelity Levels
Choose the right fidelity for the stage of work.
| Level | What it is | When to use | Tool |
|-------|-----------|------------|------|
| **Lo-fi sketch** | Boxes, lines, labels — no styling | Early ideation, quick exploration | Paper, Excalidraw, ASCII |
| **Mid-fi wireframe** | Grayscale, content placeholders, real layout | UX review, stakeholder alignment | Figma (wireframe kit), Balsamiq |
| **Hi-fi wireframe** | Near-final layout, real content, no color | Pre-handoff to visual design | Figma |
| **Interactive prototype** | Clickable flows, transitions | User testing, investor demos | Figma prototyping |
**Rule:** Start at the lowest fidelity that answers the current question. Only increase fidelity when you've validated the structure.
---
## ASCII / Text Wireframing
For quick communication in chat, tickets, or documentation — no tool required.
### Common notation
```
┌─────────────────────────────┐ Box / container
│ │
└─────────────────────────────┘
[Button Label] CTA button
[ Input placeholder ] Text input
[x] Checkbox (o) Radio Form controls
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Divider / separator
▓▓▓▓▓▓▓▓▓▓▓▓▓ Image placeholder
░░░░░░░░░░░░░ Skeleton/loading state
≡ Hamburger menu ✕ Close ⌕ Search ← Back
```
### Example: Settings page layout
```
┌─────────────────────────────────────────────┐
│ ← Settings │
├──────────────┬──────────────────────────────┤
│ │ Account │
│ Account │ ─────────────────────────── │
│ Billing │ Name [ John Doe ] │
│ Security │ Email [ john@... ] │
│ Notifications│ │
│ API Keys │ [ Save Changes ] │
│ │ │
└──────────────┴──────────────────────────────┘
```
---
## User Flow Diagrams
Map the user journey before designing screens.
### Notation
```
[Page/Screen] — a UI state
<Decision> — a branch point (yes/no, logged in/out)
(Action) — user action
→ — flow direction
↵ — loop back
Error states — document alongside happy path, not as afterthought
Empty states — what does the screen look like with no data?
Loading states — what shows during async operations?
```
### Example: Onboarding flow
```
(User clicks "Sign Up")
↓
[Sign Up Form]
↓
<Email already exists?>
Yes ↓ No ↓
[Error: "Email taken"] (Submit form)
[Login link shown] ↓
[Email Verification]
↓
<Verified within 24h?>
No ↓ Yes ↓
[Resend email] [Create Profile]
↓
[Dashboard — empty state]
```
### Flow documentation format
```markdown
## Flow: [Feature Name]
**Entry point:** [Where does this start?]
**Exit points:** [Where can this end?]
**Preconditions:** [What must be true before this flow starts?]
### Happy path
1. User [action]
2. System [response]
3. User [action]
4. System [response]
### Error paths
- E1: [Condition] → [What the system shows]
- E2: [Condition] → [What the system shows]
### Edge cases
- [Edge case and how it's handled]
```
---
## Information Architecture
IA defines how content is organized and labeled — before layout decisions.
### Card sorting output format
```
Home
├── Dashboard
│ ├── Overview
│ └── Activity Feed
├── Projects
│ ├── All Projects
│ ├── [Project Name]
│ │ ├── Overview
│ │ ├── Members
│ │ ├── Settings
│ │ └── Billing
│ └── New Project
├── Settings
│ ├── Profile
│ ├── Security
│ ├── Notifications
│ └── API Keys
└── Help & Support
├── Documentation
└── Contact
```
### IA principles
1. **Mutual exclusivity** — each item belongs in one place only
2. **Collective exhaustivity** — all content has a place
3. **User mental model** — organize by how users think, not how the system is built
4. **Progressive disclosure** — show the most common tasks first; hide advanced features
5. **Maximum 7 items** — in any navigation level (7±2 cognitive limit)
---
## Wireframe Annotation Standards
Annotations explain behavior that visual design cannot show.
### Annotation types
| Symbol | Meaning | Use for |
|--------|---------|---------|
| `[1]` | Numbered callout | Linking to spec note |
| `!` | Important note | Edge case, constraint |
| `?` | Open question | Unresolved decision |
| `→` | Links to | Screen reference |
### Annotation format
```markdown
**[1]** Search results
- Default: show last 5 searches when input is focused
- Typing: show live results after 300ms debounce
- Max results: 8 items
- Empty query: show "recent searches" section
- No results: show "No results for [query]" + suggestion
**[2]** Pagination
- Show when total items > 20
- Always show: first, last, and 2 pages around current
- Loading: skeleton rows, same count as previous page
**!** Error state
- API timeout (>5s): show "Something went wrong" with retry button
- Network offline: show banner, queue actions for retry
```
---
## Tool Selection Guide
### Excalidraw (excalidraw.com)
Best for: quick lo-fi, async async async collaboration, developer-friendly
```
Pros: Free, shareable URL, hand-drawn feel (reduces premature polish attachment)
Works in VS Code, embedded in Notion/Linear
Cons: Not great for hi-fi, no component library out of the box
```
### Figma
Best for: mid-fi and hi-fi, full team collaboration, handoff to visual design
```
Pros: Industry standard, component libraries, Dev Mode handoff, prototyping
Cons: Overkill for lo-fi, learning curve
Setup: Install "Wireframe Kit" community file for grayscale wireframing
```
### Balsamiq
Best for: stakeholder-friendly lo-fi, non-technical clients
```
Pros: Intentionally rough look (signals "this is not final"), fast
Cons: Not free, limited for hi-fi
```
### ASCII/Markdown (in code, tickets, docs)
Best for: developer communication, PR descriptions, issue comments
```
Pros: No tool needed, version-controllable, always accessible
Cons: Limited fidelity
```
---
## Wireframe → Visual Design Handoff
When wireframe is approved, hand off to visual design (or proceed to hi-fi if self-directing).
### Handoff document
```markdown
## Wireframe Handoff: [Feature Name]
### What's been decided
- Layout structure (column count, section order)
- Navigation model (tabs / sidebar / breadcrumb)
- Primary user flow (happy path and key error paths)
- Content hierarchy (what's most important on each screen)
### What's NOT decided (for visual design)
- Colors, typography, spacing values
- Illustration or icon choices
- Micro-interactions and transitions
- Final copy (placeholder text only)
### Open questions (needs decision before visual design)
- [ ] [Open question 1]
- [ ] [Open question 2]
### Annotated wireframes: [Figma link or image]
### User flow diagram: [link or embedded above]
```
---
## Checklist
- [ ] Fidelity level chosen appropriate to the current question
- [ ] User flow diagram created before any screen wireframes
- [ ] All entry points documented
- [ ] Error states and empty states included (not just happy path)
- [ ] IA / navigation structure mapped before screen layouts
- [ ] Each screen has a clear primary action
- [ ] Annotations explain all non-obvious behavior
- [ ] Open questions documented as `?` annotations (not left implicit)
- [ ] Wireframe reviewed by at least one other person before starting visual design
- [ ] Handoff doc created listing what is / isn't decidedRelated Skills
zero-trust-patterns
Zero-Trust security patterns — mTLS between microservices (Istio/SPIFFE), SPIRE workload identity, OPA/Envoy authorization, NetworkPolicy default-deny-all, short-lived credentials, service mesh security, and Kubernetes RBAC hardening.
webrtc-patterns
WebRTC patterns — peer connection setup, ICE/STUN/TURN configuration, signaling server design, SFU vs mesh topology, screen sharing, media track management, and reconnect/ICE restart handling.
webhook-patterns
Webhook patterns for receiving, verifying (HMAC), and idempotently processing third-party events. Covers Stripe, GitHub, and generic webhook patterns, delivery guarantees, retry handling, and testing.
web-performance
Web performance optimization: Core Web Vitals (LCP, CLS, INP), Lighthouse CI with budget configuration, bundle analysis (webpack-bundle-analyzer, vite-bundle-visualizer), hydration performance, network waterfall reading, image optimization (WebP/AVIF, srcset), and font performance.
wasm-performance
WebAssembly performance: wasm-opt binary optimization, size reduction (panic=abort, LTO, strip), profiling WASM in Chrome DevTools, memory management (linear memory, avoiding GC pressure), SIMD, and multi-threading with SharedArrayBuffer.
wasm-patterns
WebAssembly patterns: wasm-pack, wasm-bindgen (JS↔Wasm interop), WASI, Component Model, wasm-opt, Rust-to-WASM compilation, JS integration (web workers, streaming instantiation), and production deployment (CDN, Content-Type headers).
visual-testing
Visual Regression Testing: tool comparison (Chromatic/Percy/Playwright screenshots/BackstopJS), pixel-diff vs AI-based comparison, baseline management, flakiness strategies (masks, tolerances, waitForLoadState), CI integration with GitHub Actions, and Storybook integration.
visual-identity
Brand identity development: color palette construction (primary/secondary/semantic/neutral), logo concept brief writing, typeface pairings, brand voice definition, mood board direction, and Brand Guidelines document structure. Use when establishing or evolving a visual brand — not for implementing existing tokens.
ux-micro-patterns
UX micro-patterns for every product state: Empty States, Loading States (skeleton screens, spinners, optimistic UI), Error States, Success States, Confirmation Dialogs, Onboarding Flows, and Progressive Disclosure. These patterns apply to every feature — done wrong, they're the biggest source of user confusion.
typography-design
Typography as a creative discipline: typeface selection criteria, type pairing (serif + sans, display + body), modular scale systems, line-height and tracking ratios, hierarchy construction, and web/mobile rendering considerations. The decisions behind design tokens, not the tokens themselves.
typescript-testing
TypeScript testing patterns: Vitest for unit/integration, Playwright for E2E, MSW for API mocking, Testing Library for React components. Core TDD methodology for TypeScript/JavaScript projects.
typescript-patterns
TypeScript patterns — type system best practices, strict mode, utility types, generics, discriminated unions, error handling with Result types, and module organization. Core patterns for production TypeScript.