skills/prototype/SKILL.md
Use when user says "create prototype", "build UI mockup", "quick prototype", "mock this feature", "prototype page", or wants to generate UI with mock data that becomes production code by swapping mocks for real API.
npx skillsauth add ash4180/vorbit prototypeInstall 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.
Create reusable UI prototypes that become production code. Frontend devs swap mocks for real API.
// TODO: Replace with real API.Locate
_shared/: This skill ships as a plugin, so_shared/files live in the plugin cache, not your project. Before reading any_shared/...path below, runls -d ~/.claude/plugins/cache/local/vorbit/*/skills/_shared 2>/dev/null | head -1and use the output as the absolute base for every_shared/...reference.
Follow _shared/pencil-check.md — shared 6-step procedure that detects Pencil connection, checks for .claude/rules/pencil.md, and routes the user through /vorbit:design:pencil sync if needed. The same procedure is used by /vorbit:implement:webflow; keeping it shared prevents drift.
Read and follow _shared/mcp-tool-routing.md. Discover connected platforms, ask user which to use, and verify connection.
IF Figma URL provided:
mcp__figma__get_design_context to fetch the design (canonical per _shared/mcp-tool-routing.md). mcp__plugin_figma_figma__get_design_context also works if the bare server isn't connected./mcp to reconnect, then retry." → STOPIF no external services needed: skip to Phase 1
Goal: Understand what prototype needs to be built
Actions:
Output: Clear statement of prototype purpose
Goal: Understand existing patterns before writing any code
DO THIS BEFORE WRITING ANY CODE.
Actions:
Check package.json for framework:
react → React/TSXvue → Vue SFCsvelte → SvelteScan codebase for patterns:
Report findings to user:
Framework: React/TSX
Pages location: src/pages/
Styling: Tailwind CSS
Existing components: Layout, Card, Button, Input, Table
Use AskUserQuestion to confirm: "These are the patterns I found. Should I follow them?"
Output: Documented codebase patterns to follow
Goal: Resolve all ambiguities before building
CRITICAL: This is the most important phase. DO NOT SKIP.
IF Figma design provided:
IF no Figma design, MUST ask using AskUserQuestion:
Wait for answers before proceeding.
Don't invent features:
Output: Complete specification for prototype
Goal: Create prototype following codebase patterns
Actions:
Create page structure matching codebase patterns:
src/pages/[Feature]/
├── index.tsx # Main page
├── components/ # Feature-specific components
└── mocks/ # Mock data (delete when implementing real API)
└── data.json # Shape matches API response
Create components with clean props:
Create mock data:
pages/Feature/mocks/users.json → /api/usersMANDATORY: Register every mock — file and state — in .claude/mock-registry.json with "createdBy": "prototype". See _shared/mock-registry.md for the schema, write templates, when to register, and what to capture. Create the registry if absent; otherwise append to the mocks array.
MANDATORY: Every mock (file or state) MUST have TODO comment:
import mockData from './mocks/data.json';
// TODO: Replace with real API
Update todos as each component is completed
Mock Data Rules:
Output: Working prototype with clean structure
Goal: Ensure prototype is ready for frontend handover
Actions:
Verify checklist:
// TODO: Replace with real API commentPresent summary to user:
Created:
- src/pages/Feature/index.tsx
- src/pages/Feature/components/...
- src/pages/Feature/mocks/...
Mock data registered in .claude/mock-registry.json:
- mocks/data.json → GET /api/...
Used existing components:
- Layout, Card, Button, Input
Next steps:
- Review with team
- /vorbit:implement:epic to create issues
- /vorbit:implement:cleanup-mocks [feature] before backend handover
Mark all todos complete
Output: Complete, documented prototype ready for handover
A prototype is:
A prototype is NOT:
src/
└── pages/ # or routes/, views/
└── [FeatureName]/
├── index.tsx # Main page component
├── components/ # Feature-specific components
│ ├── Header.tsx
│ ├── List.tsx
│ └── Form.tsx
└── mocks/ # Mock data FOR THIS FEATURE
└── data.json # → swap to real API later
The build checklist and anti-patterns live inline in Phases 3–5 (where they're actionable), so they're not repeated here.
development
Sync design tokens and components from a codebase to a Pencil canvas (`.pen` files), or set up a Pencil canvas from a style guide when no codebase exists. Use when the user says "sync pencil", "setup pencil", "configure pencil", "pencil sync", "sync tokens to pencil", "build pencil component library", or names Pencil/`.pen` files explicitly. Also triggers when mockups generated by Pencil don't match project conventions.
development
--- name: figma version: 1.6.0 description: Use when user says "figma", "figma it", "sync figma", "figma mockup", "create figma file", "design to figma", "figma from PRD", "figma from journey", "build in figma", or "figma design system" — anything that creates, syncs, or updates Figma design systems, components, variables, mockups, or front-end-ready screens. Always enumerates the linked Figma library FIRST (library-driven discovery, not per-need search), produces a block→DS mapping table for us
development
Use when the user wants to build Webflow pages, templates, or components, with or without Figma designs as reference.
testing
Use when the user wants to verify an implementation, validate acceptance criteria, or run a Vorbit-style post-change check using shared project rules.