Skip to content
Skills Library
Design & UX · Planning

wireframes

/wireframes

Use when proposing or comparing UI changes for the user to decide on - after a design critique, UX or interaction audit, or design review, while brainstorming a screen or flow, when weighing UI options, sketching a screen that doesn't exist yet, or laying out empty, loading, error and phone-width states. Also when the user asks what a proposed screen or layout would look like. Not for colour, contrast or typography tweaks, or for UI changes the user has already decided and asked you to build.

Repository
wireframes ↗
Licence
MIT
Last repository change
12.11.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
2
Scripts
0
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 12.11.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

Use when proposing or comparing UI changes for the user to decide on - after a design critique, UX or interaction audit, or design review, while brainstorming a screen or flow, when weighing UI options, sketching a screen that doesn't exist yet, or laying out empty, loading, error and phone-width states. Also when the user asks what a proposed screen or layout would look like. Not for colour, contrast or typography tweaks, or for UI changes the user has already decided and asked you to build.

Original author description

Use when proposing or comparing UI changes for the user to decide on - after a design critique, UX or interaction audit, or design review, while brainstorming a screen or flow, when weighing UI options, sketching a screen that doesn't exist yet, or laying out empty, loading, error and phone-width states. Also when the user asks what a proposed screen or layout would look like. Not for colour, contrast or typography tweaks, or for UI changes the user has already decided and asked you to build.

How it works

  1. Overview
  2. The output
  3. Drawing rules
  4. Check it before showing
  5. Hand it over
  6. Common mistakes
Original SKILL.md headings · 93 lines, 837 words
SKILL.md preview
---
name: wireframes
description: Use when proposing or comparing UI changes for the user to decide on - after a design critique, UX or interaction audit, or design review, while brainstorming a screen or flow, when weighing UI options, sketching a screen that doesn't exist yet, or laying out empty, loading, error and phone-width states. Also when the user asks what a proposed screen or layout would look like. Not for colour, contrast or typography tweaks, or for UI changes the user has already decided and asked you to build.
---

# Wireframes

## Overview

A UI proposal is a picture, not a page of prose. Draw each change as a cheap wireframe:
the **Now** next to the **Proposed**, grey bars for everything that stays the same, real
labels only on the elements under discussion, and one sentence of why. It does **not**
reproduce the app's real look: no brand colours, no real fonts, no pixel fidelity. The user
sees the change at a glance, and drawing it costs few tokens.

**When not to use:** the change is purely visual style (colour, contrast, fonts, spacing
tokens), so describe it or show real CSS. Or the user has already decided and asked you to
build it, so build it. Or nothing about layout, controls or flow changes.

## The output

One self-contained HTML file, built like this:

1. **Path:** `docs/mockups/YYYY-MM-DD-<topic>.html` in the project, so mockups are kept
   with the code and can be committed. If the project already keeps mockups in another
   `mockups/` folder, use that one instead.
2. **Head:** copy everything from `<!doctype html>` to `</style></head><body>` in
   [kit.html](kit.html) verbatim. Change only `<title>`. Use kit classes only. Inline
   `style` is for size and spacing (width, height, margin, a `.menu`'s position), never colour.
3. `<h1>` and a one-line `.lede`.
4. One section per change: `<h2>N · outcome in the user's words</h2>`, then one layout:

| Situation | Layout | Labels |
|---|---|---|
| Something exists and should change | `.pair`: Now, then Proposed | `.lbl.b` "Now: what's wrong" · `.lbl.g` "Proposed: what changes" |
| The fix isn't decided | `.opts`: 2-3 options, with a small `.solo` Now above when the thing exists | `.lbl.o` "A · name (recommended)"; `.why` "+ gain · − cost" |
| Nothing exists yet | `.solo`: Proposed only | `.lbl.g`; numbered `.n` callouts explained in `.why` |
| One element across states or widths | `.strip`: one frame per state | `.lbl` "Empty", "Loading", "Error", "Phone"…; at most one `.why` under the strip |

5. Each side of a `.pair`, and each option, gets a label (10 words at most), its frame or
   frames, and one `.why` sentence. Use two frames on one side when the change is a sequence
   (menu, then the toast after it).

Read [kit.html](kit.html) once: below the CSS it has a worked example of each layout and an
index of every class.

## Drawing rules

- **Real text only where the decision is:** the changed control, its immediate neighbours, and
  the app name or breadcrumb for orientation. Everything else is `.box` (text line, set
  `width`), `.img` (image or chart) or a `.row` of grey bars.
- **Mark the one control that changes:** `.bad` (red dashed) on the problem in Now, `.good`
  (solid green) on the change in Proposed and on what sets each option apart. Mark nothing in
  a `.strip`. Outline the control, never a full-width bar or a whole frame, because frames clip
  outlines at their edges.
- **Something missing:** draw an empty dashed slot where it belongs
  (`<span class="in bad">no search here</span>`), not an outline on a nearby element.
- **Fit about 800px:** each `.pair` column is about 380px, so keep a `.bar` to about 5 items.
- **Kind of app:** web or desktop → `.f`; narrow screens or native mobile → `.phone`;
  terminal UI → `.f.mono.pad` with real text lines and grey bars for unchanged output.
- **Open questions** go in that side's `.why`, phrased as a question.
- **Budget:** at or under about 15 KB per file. A section over about 1.5 KB is drawing content
  nobody is deciding about, so swap that content for grey bars.

## Check it before showing

If a browser tool that can screenshot is available, open the file and look. In the Claude
desktop app, that means `mcp__Claude_Browser__preview_start` with `url: file://<absolute path>`,
then `mcp__Claude_Browser__computer` with action `screenshot`. If the browser refuses the local file,
treat the page as unviewed (see below). Check that each outline sits on its intended element, that
nothing is clipped or wrapped, and that overlays don't hide what they explain. Fix, then
look again.

With no screenshot tool (CLI, headless, subagent), re-read the markup against those checks
and say in the handover that the page hasn't been viewed.

## Hand it over

In chat, write only:

- the file as a markdown link relative to the project root;
- one line per section: number, title, and state ("ready", "pick A/B/C", or the open question);
- the decisions you need: one sentence each, your pick and the single main reason.

The drawings and their `.why` lines carry the detail and the trade-offs, so don't describe
them again. Wait for the user's picks
before building. Without a user to ask (subagent, headless), return the same three things
and stop.

## Common mistakes

| Mistake | Instead |
|---|---|
| Labelling every element | Label only what the decision touches |
| Restyling to match the app | Kit CSS verbatim; grey bars |
| A paragraph per drawing in chat | Link, one line per section, decisions |
Files in this package (2)
  • SKILL.md 5 KB
  • kit.html 8 KB

Versions

The database has no other skills named wireframes.

Database snapshot: 13.11.2026 · package version 4d2535b63017 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 85draft
    UX designer — user flows, information architecture, wireframes, and interaction design. Use when asked to "design a user flow", "map the IA", "wireframe this screen", or "review UX before shipping".
  • 100wireframe
    Produce low-fidelity black-and-white UI wireframes as SVGs or viewer pages. Use when asked to wireframe, sketch a screen, draft a layout, make a low-fi mockup, or publish wireframes.
  • 90ux-copywriting
    Use when asked to write or improve UI text or microcopy - produces interface copy and states (empty, error, loading) from screen context, state and user action, scoped to the current scenario
  • 100wireframe
    Create and render wireframes using wiremd — converts Markdown into visual HTML mockups. Trigger whenever the user wants to wireframe, mockup, prototype, or sketch a UI screen: from a description, Jira ticket, PRD, existing React/JSX, or rough idea. Also trigger on: "draw a login…
  • 100design-critiquer
    Use this skill when reviewing, evaluating, or giving structured feedback on UI designs, wireframes, mockups, or design systems. Trigger phrases: ''critique this design'', ''give feedback on my UI'', ''review this wireframe'', ''what''s wrong with this design''. Do NOT use for…
  • 100ux-polish
    Visual design quality skill — elevates HTML wireframes from structural prototypes to polished UI. Applies typography, color, spacing, motion, interaction polish. Works on /ux-wireframe output or any HTML. Use when "ux polish", "polish wireframe", "colorize", "design audit",…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.