skills/ui-mockup-visualizer/SKILL.md
Create fixed-canvas HTML mockups for websites, mobile apps, and desktop apps so an AI agent can verify UI direction before implementation. Use when a user asks for layout ideas, wireframes, visual comparison, HTML previews, mockups, or wants to see what a sidebar, navbar, modal, dashboard section, mobile screen, or desktop panel could look like. This skill always proposes Option A, Option B, and Option C with one recommended option, mirrors the user's language in the review, uses Svelte CDN plus TailwindCSS CDN templates, starts a local preview server, captures screenshot checkpoints of the mockup region only, and turns an approved option into an implementation-ready plan.
npx skillsauth add thienanblog/awesome-ai-agent-skills ui-mockup-visualizerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill to turn UI/UX discussion into concrete HTML mockups quickly, so the user can verify whether the agent is visualizing the right thing before implementation starts.
Default to this skill whenever a user wants to see the layout the agent is describing, wants UI/UX ideas, wants visual comparison, or needs a fast wireframe for websites, mobile apps, or desktop apps. Skip it only when the user explicitly asks for text-only output.
Read these references as needed:
references/mockup-design-system.mdreferences/pattern-benchmarks.mdStrong trigger cues:
Compress the request to the smallest visual surface that matters:
web-desktop, mobile-app, or desktop-appDo not mock the entire product unless the whole-page structure is the question. Keep the mockup focused and use empty context blocks to show placement.
Mirror the user's language from the first response onward. Keep Option A, Option B, and Option C unchanged, but translate the surrounding explanation, notes, and review copy into the user's language.
When naming UI regions for the first time, pair the plain-language label with the developer term in English:
Thanh điều hướng (Navbar)Thanh bên (Sidebar)Menu thả xuống (Dropdown menu)Thanh dock (Dock bar)Thanh trạng thái (Status bar)If the user seems unsure about the term they want, offer the likely names instead of forcing them to guess.
Always present:
Option AOption BOption CRules:
RecommendedUse this reply contract:
What I think you want
<1-2 concise sentences>
Options
- Option A: ...
- Option B: ...
- Option C: ...
- Recommended: Option B because ...
Reply with:
- one option: "Option B"
- many options: "Option A + C"
- reject all: "None, I want ..."
After every review round, explicitly do one of these:
Use 1-3 benchmark references from major products when they genuinely clarify the pattern. Prefer stable, product-level references such as:
Do not pretend these are exact copies. State the pattern, not the brand styling.
If the user asks for the latest real-world examples, exact citations, or proof of current practice, browse official/public sources before making the claim.
Prefer the bundled template so the visual language stays consistent across sessions.
The template runtime is standardized:
Svelte CDN for rendering logicTailwindCSS CDN for layout and stylingCreate the workspace under the current project:
python3 scripts/init_mockup_workspace.py \
/absolute/path/to/project/docs/awesome-ai-agent-skills/mockups/<slug> \
--title "Short mockup question" \
--platform web-desktop
The script creates a ready-to-edit static mockup package and picks the matching template variant:
assets/mockup-template/ for web-desktopassets/mockup-template-mobile-app/ for mobile-appassets/mockup-template-desktop-app/ for desktop-appPrefer editing mockup-data.js only. Localize uiText, notes, labels, and summaries before sharing the mockup.
Change the runtime files only when the default Svelte + Tailwind viewer cannot express the idea.
Start a local server from the mockup directory:
python3 scripts/start_mockup_server.py \
/absolute/path/to/project/docs/awesome-ai-agent-skills/mockups/<slug>
This prints a local URL and writes .mockup-server.json in the mockup folder. Share the URL with the user.
The preview server supports live reload. If the user asks for another revision while the server is still running, update mockup-data.js or the runtime files and let the page refresh automatically.
Stop it as soon as the review loop is done or paused. Do not leave the temporary preview server running after the skill finishes:
python3 scripts/stop_mockup_server.py \
/absolute/path/to/project/docs/awesome-ai-agent-skills/mockups/<slug>
Prefer Chrome DevTools MCP or Playwright MCP when available because they can capture exactly what the agent sees.
Always capture the approved mockup region only. Do not screenshot the whole review page, option rail, rationale panel, notes, or surrounding browser area. Extra chrome creates noise and can make later implementation less accurate.
Use the built-in capture mode:
http://127.0.0.1:4173/#Bhttp://127.0.0.1:4173/?capture=1&option=BAlso keep the local fallback script available:
python3 scripts/capture_mockup.py \
--url http://127.0.0.1:4173 \
--option B \
--output /absolute/path/to/project/docs/awesome-ai-agent-skills/visuals/<slug>-q1.jpg
Use numbered checkpoint images whenever the direction changes materially:
.../visuals/<slug>-q1.jpg.../visuals/<slug>-q2.jpg.../visuals/<slug>-q3.jpgTreat these screenshots as verification memory. When implementation starts, compare the built UI against both the approved mockup and its checkpoint image instead of relying on prose alone.
If Chrome DevTools MCP or Playwright MCP is missing, explicitly recommend installing one of them for faster headless verification.
After the user approves one option or a merged direction:
Do not jump into full production implementation guidance before the user confirms the visual direction.
Option A, Option B, and Option C exactly so the user can refer to them quickly.Recommended every time.docs/awesome-ai-agent-skills/visuals/ whenever the discussion reaches a stable checkpoint.scripts/init_mockup_workspace.py: create a mockup workspace from the bundled templatescripts/start_mockup_server.py: start a local live-reload preview server and record its statescripts/stop_mockup_server.py: stop the recorded local serverscripts/capture_mockup.py: capture the mockup-only checkpoint URL to an image with local Chrome/Chromium when availablereferences/mockup-design-system.md: fixed canvas sizes, runtime contract, capture behavior, and block schemareferences/pattern-benchmarks.md: stable benchmark patterns to cite when explaining the optionsassets/mockup-template/: reusable web mockup viewer entrypointassets/mockup-template-mobile-app/: mobile-first review entrypointassets/mockup-template-desktop-app/: desktop-app review entrypointassets/mockup-runtime/: shared Svelte CDN + TailwindCSS CDN runtime copied into each mockup workspacedevelopment
Create, reorganize, or update documentation for monorepos or single-project repos using root docs indexes, unique repo/module/feature identifiers, repo-owned detailed docs, cross-repo relationship maps, machine-readable frontmatter, API contracts, workflows, runbooks, testing, and debugging guidance.
development
Generate or update AGENTS.md/CLAUDE.md files for AI coding agents through auto-scanning project files combined with interactive Q&A. Supports multiple tech stacks, development environments, and preserves customizations when updating.
development
Create, reorganize, or update documentation for monorepos or single-project repos using root docs indexes, unique repo/module/feature identifiers, repo-owned detailed docs, cross-repo relationship maps, machine-readable frontmatter, API contracts, workflows, runbooks, testing, and debugging guidance.
development
Generate or update AGENTS.md/CLAUDE.md files for AI coding agents through auto-scanning project files combined with interactive Q&A. Supports multiple tech stacks, development environments, and preserves customizations when updating.