agentsclimarketplace

Figma generate design

Skill sarveshsea/design-skills/skills/figma-generate-design

Create new Figma screens and pages using existing components, variables, and design systemFrom its SKILL.md

Install
npx -y skills add sarveshsea/design-skills --skill figma-generate-design

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.1 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it

/figma-generate-design — Create Designs Using Existing Components

Generate new screens and pages in Figma using your existing components, variables, and design system. Produces structured, spec-compliant layouts with full self-healing validation. Requires /figma-use.

Freedom Level: High

Full creative freedom within the design system. Must use existing components and variables, never raw values.

Prerequisites

  • /figma-use foundational skill loaded
  • Design system pulled (memi pull) or variables exist in file
  • figma_search_components called this session (nodeIds are session-scoped)

Workflow

Step 1: Check Code Connect & Inventory

get_code_connect_map          → what's already mapped code ↔ Figma?
figma_search_components       → what components exist?
figma_get_variables           → what tokens are available?

If Code Connect mappings exist: use those components. Don't recreate.

Step 2: Plan the Layout (Atomic Design)

Map the design to atomic levels:

Page: AuthLogin
├── Template: AuthTemplate (centered, max-w-md)
│   ├── Organism: LoginForm
│   │   ├── Molecule: FormField (email)
│   │   │   ├── Atom: Label
│   │   │   ├── Atom: Input
│   │   │   └── Atom: HelpText
│   │   ├── Molecule: FormField (password)
│   │   ├── Molecule: SocialLogin
│   │   │   ├── Atom: Button (Google)
│   │   │   ├── Atom: Separator
│   │   │   └── Atom: Button (GitHub)
│   │   └── Atom: Button (Submit)
│   └── Organism: Footer

Step 3: Build Bottom-Up

  1. Atoms — instantiate existing or create with use_figma
  2. Molecules — compose atoms with Auto Layout
  3. Organisms — compose molecules with state considerations
  4. Template — page frame with responsive constraints
  5. Page — fill template with real content

Prefer use_figma for design-aware writes. It understands your design system and returns structured output.

Step 4: Apply Design Tokens

All visual properties MUST bind to variables:
  background → colors/surface/primary
  text       → colors/text/primary
  border     → colors/border/default
  spacing    → spacing/4, spacing/8, spacing/16
  radius     → radius/default, radius/lg

Never hardcode. If a token doesn't exist, create it with figma_batch_create_variables first.

Step 5: Self-Healing Validation (MANDATORY)

Run the self-healing loop from /figma-use: CREATE → SCREENSHOT → ANALYZE → FIX → VERIFY (max 3 rounds).

Step 6: Generate Spec & Code

After the design is validated:

memi spec component LoginForm → specs/components/LoginForm.json
memi spec page AuthLogin → specs/pages/AuthLogin.json
memi generate LoginForm → generated/components/LoginForm/
add_code_connect_map → establish Figma ↔ code mapping

Layout Patterns

Dashboard

Frame (VERTICAL, fill)
├── Header (HORIZONTAL, hug height, fill width)
│   ├── Logo + Title
│   └── Actions (avatar, notifications)
├── Content (HORIZONTAL, fill)
│   ├── Sidebar (VERTICAL, fixed 240px, fill height)
│   │   └── NavItems
│   └── Main (VERTICAL, fill)
│       ├── MetricsRow (HORIZONTAL, fill, gap=16)
│       │   └── MetricCard × 4 (fill, equal)
│       ├── ChartsRow (HORIZONTAL, fill, gap=16)
│       │   └── Chart × 2 (fill, equal)
│       └── TableSection (VERTICAL, fill)

Auth Flow

Frame (VERTICAL, centered, max-480px)
├── Logo (centered)
├── Card (VERTICAL, fill width, padding=32)
│   ├── Heading + Subtext
│   ├── Form (VERTICAL, gap=16)
│   │   └── FormField × N
│   ├── Button (fill width)
│   └── Links (HORIZONTAL, centered)

Marketing / Landing

Frame (VERTICAL, fill, gap=0)
├── Nav (HORIZONTAL, fixed, z-index)
├── Hero (VERTICAL, centered, min-h=600)
├── Features (grid 3-col, padding=80)
├── Social Proof (HORIZONTAL, scroll)
├── CTA (VERTICAL, centered, bg=primary)
└── Footer (VERTICAL, padding=40)

Responsive Strategy

BreakpointWidthColumnsBehavior
Mobile375px1Stack vertical, full-width inputs
Tablet768px2Side-by-side where sensible
Desktop1280px3-4Full grid, sidebar visible

Use MIN_WIDTH + MAX_WIDTH on content containers. FILL on flexible elements. FIXED only on sidebar, icons, avatars.

Anti-Patterns

  • Elements using "hug contents" when they should "fill container"
  • Inconsistent padding between similar elements
  • Text/inputs not filling available width
  • Components floating on blank canvas (always use Section/Frame)
  • Raw hex colors instead of variable bindings
  • Fixed widths on elements that should be responsive
  • Skipping the self-healing screenshot loop
  • Using raw Figma execution when use_figma would work better
  • Creating components that already exist in Code Connect

What ships with it: 1 file

744 B alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.