figma-mockup
Skill0 starsChanged 5 months agoMITView on GitHub
Generates Figma mockups and wireframes from a UI description. Use when the user says: 'make a mockup', 'wireframe this', 'design a screen', 'Figma mockup', 'mock up a UI', 'create a layout for', 'design the login / dashboard / settings page', 'turn this into a Figma design', or describes a screen, flow, or component they want visualized. Translates a described screen into frames, components, layout, and a labeled spec. Works through the Figma MCP tools when connected, and degrades gracefully to a detailed frame spec plus an HTML/CSS wireframe when Figma MCP is not available.
In this repository11 other files it gives its agents.
- brd-builderSkill
- email-drafterSkill
- epic-creatorSkill
- gpa-calculatorSkill
- meeting-prepperSkill
- notion-doc-templaterSkill
- process-flow-diagramSkill
- project-plannerSkill
- qa-agentSkill
- status-reporterSkill
- tracker-qaSkill
The file
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 9 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
Hierarchy is the job: Every screen has a primary action and a primary piece of information.
- Distinctive: line 16
Degrade gracefully: If the Figma MCP isn't connected, produce a precise frame-and-component spec plus a working HTML/CSS wireframe so the …
- Distinctive: line 32
Before placing anything, lock a small system and state it:
- Distinctive: line 46
Use the Figma design/generation tools to create the file or frames, the component set, and the layout.
- Distinctive: line 47
Create components once and place instances, so the mockup is editable and consistent.
- Distinctive: line 48
Add the annotations (labels, spacing tokens, interaction notes) as text/notes near the frames.
- Very specific: line 55
Keep the HTML semantic (header/nav/main/section/footer) and the CSS token-driven, mirroring the design system you defined.
- Distinctive: line 59
Use this structure per frame so the mockup is buildable:
- Very specific: line 119
Use generic, placeholder content (Acme Co, sample names like Alex / Jordan / Sam, example.com, fake metrics) — never real customer data in …
- Distinctive: line 120
Don't embed credentials, tokens, or real API endpoints in the HTML fallback.
- Distinctive: line 121
When Figma MCP write tools are denied or unavailable, never claim a Figma file was created — deliver the spec + HTML fallback and say so …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Figma Mockup — Wireframes from a Description
You turn a plain-language UI description into a structured mockup: frames, components, a layout system, and a labeled annotation spec. You think like a product designer — hierarchy, spacing rhythm, states, and responsive behavior — not like someone dropping boxes on a canvas.
Core Philosophy
- Structure before pixels. Decide the layout system first (grid, spacing scale, type scale, component inventory), then place elements into it. Consistency comes from the system, not from eyeballing each element.
- Hierarchy is the job. Every screen has a primary action and a primary piece of information. Make them obvious through scale, weight, and placement. Avoid uniform-emphasis layouts where everything competes.
- Design the states, not just the happy path. A real screen has empty, loading, error, and filled states. Name them even if you only fully render one.
- Annotate everything. A mockup nobody can interpret is a drawing. Label components, spacing tokens, interactions, and responsive rules so engineering can build from it.
- Degrade gracefully. If the Figma MCP isn't connected, produce a precise frame-and-component spec plus a working HTML/CSS wireframe so the user still has something concrete to review and import later.
How It Works
Step 1: Understand the screen
Clarify (ask only what you can't reasonably infer):
- What screen / flow? (login, dashboard, settings, checkout, list+detail…)
- Primary goal of the screen — what's the one thing the user is here to do?
- Key content and actions — what must appear? what's the primary CTA?
- Platform & breakpoint — desktop (1440), tablet (768), mobile (375)? Default to the one the description implies.
- Style direction — if given (editorial, neo-brutalist, glassmorphism, Swiss/minimal, dashboard). If not, pick one deliberately and state it; avoid a vague "clean default."
- Existing design system? — if the user references one, honor its tokens/components.
Step 2: Define the design system for the mockup
Before placing anything, lock a small system and state it:
- Grid: columns + gutter + margin (e.g., 12-col, 24px gutter, 80px margin at 1440).
- Spacing scale: e.g., 4 / 8 / 12 / 16 / 24 / 32 / 48 / 64.
- Type scale: e.g., display 40, h1 28, h2 20, body 16, caption 13 — with weights.
- Color roles: surface, text, muted, primary/accent, success, danger — semantic, not decorative.
- Component inventory: the reusable pieces this screen needs (button, input, card, nav, table row, badge…).
Step 3: Lay out the screen
Compose frames using the system. For each frame, define: structure (header / content / footer regions), the component instances inside, and the layout rules (auto-layout direction, gap, padding, alignment). Call out the primary CTA and the focal content explicitly.
Step 4: Produce the mockup
If Figma MCP is connected:
- Use the Figma design/generation tools to create the file or frames, the component set, and the layout. Prefer using/extending an existing design system if one is available (read the relevant Figma skill, e.g.
figma-use/figma-generate-design, before generating). - Create components once and place instances, so the mockup is editable and consistent.
- Add the annotations (labels, spacing tokens, interaction notes) as text/notes near the frames.
- Return the Figma link and a short summary of frames and components created.
If Figma MCP is NOT connected:
- Say so plainly, then deliver:
- A frame spec (the structured breakdown below).
- A working HTML/CSS wireframe using CSS custom properties for the tokens and CSS grid/fl exbox for layout, so the user can preview it in a browser and hand it to design for import.
- Keep the HTML semantic (header/nav/main/section/footer) and the CSS token-driven, mirroring the design system you defined.
Step 5: Spec each frame
Use this structure per frame so the mockup is buildable:
FRAME: [Screen name] — [breakpoint, e.g. 1440×1024]
Goal: [the one thing this screen is for]
Layout: [grid + regions, e.g. "top nav 64px / 12-col content / no footer"]
Regions
- Header: [logo left, nav center, account menu right]
- Content: [hero card + 3-column metric row + data table]
- (Footer): […]
Components used
- Button/Primary (states: default, hover, focus, disabled)
- Input/Text (states: default, focus, error)
- Card/Metric (label + value + delta)
- Table/Row (…)
Hierarchy
- Primary action: [e.g., "New report" button, top-right]
- Focal content: [e.g., headline metric, 40pt]
States to design
- Empty: [what shows with no data]
- Loading: [skeleton placement]
- Error: [inline message location]
Responsive notes
- At 768: [nav collapses to menu; metric row → 2 cols]
- At 375: [single column; table → stacked cards]
Annotations
- Spacing: section gap 32, card padding 24, grid gutter 24
- Interaction: [primary CTA opens the create modal]Worked Example (generic)
User: "Mock up a simple analytics dashboard for a small SaaS — top nav, a row of KPIs, and a recent-activity table. Desktop."
- System: 12-col grid @ 1440 (24px gutter, 80px margin); spacing 8/16/24/32; type display 40 / h2 20 / body 16; roles surface, text, muted, primary (accent), success, danger; components: TopNav, KpiCard, Table, Badge, Button/Primary.
- Layout: TopNav (64px) → page title row with primary "New report" button (top-right, focal action) → 4× KpiCard row → RecentActivity table.
- Hierarchy: primary action = "New report"; focal content = the leading KPI value at 40pt; status conveyed by Badge color (success/danger), used semantically.
- States: empty table → "No activity yet" illustration + CTA; loading → 4 skeleton cards + 5 skeleton rows; error → inline banner above the table.
- Responsive: at 768 KPIs go 2×2 and nav collapses; at 375 KPIs stack and the table becomes stacked cards.
- Output: with MCP → a Figma file with the component set + one composed dashboard frame, annotated. Without MCP → the frame spec above plus a token-driven HTML/CSS wireframe to preview.
Quality Checklist (before finishing)
- A design system (grid, spacing scale, type scale, color roles) is stated before layout
- The screen has a clear primary action and focal content — not uniform emphasis
- Components are defined once and reused as instances (MCP) or as classes (HTML)
- Empty, loading, and error states are at least named for the main screen
- Responsive behavior is specified for the relevant breakpoints
- Annotations cover spacing tokens and key interactions
- If MCP was unavailable, the user got both a frame spec and a previewable wireframe — and was told the Figma file was not created
- The result wouldn't read as a generic template — a deliberate style direction is applied
Privacy & Safety
- Use generic, placeholder content (
Acme Co, sample names likeAlex/Jordan/Sam,example.com, fake metrics) — never real customer data in a mockup. - Don't embed credentials, tokens, or real API endpoints in the HTML fallback.
- When Figma MCP write tools are denied or unavailable, never claim a Figma file was created — deliver the spec + HTML fallback and say so plainly.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

