AI Skill Report Card

Building Design System Components

A-82·Feb 26, 2026·Source: Web
15 / 15
NEW COMPONENT CHECKLIST:
□ Base component designed in Figma
□ Variants mapped to props system
□ Documentation written (usage, do/don't, a11y)
□ Code Connect mapping configured
□ Storybook stories created
□ Version impact assessed
□ QA approval obtained

FIGMA STRUCTURE:
Button (Base) → Primary/Secondary (Variants) → Login Button (Instance)
Recommendation
Reduce repetition between 'Best Practices' and earlier sections - merge overlapping content
15 / 15

Phase 1: Figma Foundation

  • Create base component with core functionality
  • Define variant structure (size, state, type)
  • Set up component properties (boolean, enum, text, instance swap)
  • Test all variant combinations work correctly

Phase 2: Props System Design

PROP TYPES:
- Boolean: enabled/disabled, loading, full-width
- Enum: size (sm/md/lg), variant (primary/secondary)
- Text: label, placeholder, helper text
- Instance Swap: icon, avatar, nested components

Phase 3: Documentation

  • Write usage guidelines with context
  • Create do/don't examples with visuals
  • Document accessibility requirements (ARIA, keyboard nav)
  • Specify responsive behavior

Phase 4: Code Integration

  • Configure Figma Code Connect mapping
  • Create Storybook stories for all variants
  • Set up interactive controls for props testing
  • Validate design-code parity

Phase 5: Release Management

  • Assess version impact (patch/minor/major)
  • Update migration guide if breaking
  • Communicate changes to team
  • Monitor adoption metrics
Recommendation
The Figma Code Connect example could be more concrete with actual component names/URLs
18 / 20

Example 1: Button Component Input: Need a flexible button for web app Output:

FIGMA STRUCTURE:
├── Button (Base)
    ├── Primary (Variant)
    ├── Secondary (Variant)  
    ├── Ghost (Variant)
    └── Destructive (Variant)

PROPS:
- size: enum (sm, md, lg)
- disabled: boolean
- loading: boolean
- icon: instance swap
- label: text

DOCUMENTATION:
Usage: Primary for main actions, Secondary for supporting actions
Do: Use consistent sizing within action groups
Don't: Mix button variants randomly in same context
A11y: Min 44px touch target, focus indicators, loading states

Example 2: Code Connect Mapping Input: Button component ready for code connection Output:

JavaScript
// figma.connect.tsx figma.connect(Button, "https://figma.com/button-component", { props: { variant: figma.enum("Type", { Primary: "primary", Secondary: "secondary" }), size: figma.enum("Size", { Small: "sm", Medium: "md", Large: "lg" }), disabled: figma.boolean("Disabled"), children: figma.string("Label") }, example: ({ variant, size, disabled, children }) => ( <Button variant={variant} size={size} disabled={disabled}> {children} </Button> ) })
Recommendation
Consider condensing the Common Pitfalls section to focus on the most critical issues only

Component Architecture:

  • Start with atomic components, build up to molecules/organisms
  • Use consistent naming: Base → Variant → Instance
  • Limit variants to essential differences (avoid variant explosion)

Props System:

  • Prefer enums over booleans for multi-state properties
  • Use instance swap for flexible content slots
  • Keep text overrides specific (label vs generic "text")

Documentation Standards:

  • Include real use cases, not just feature descriptions
  • Show component in context, not isolation
  • Update docs when component behavior changes
  • Link to code examples and Storybook stories

Code Integration:

  • Map Figma properties 1:1 with code props when possible
  • Use semantic prop names that match design language
  • Test Code Connect with actual component updates

Design Issues:

  • Creating too many variants (leads to maintenance burden)
  • Inconsistent component hierarchy (breaks auto-layout)
  • Missing edge cases in variant coverage

Documentation Gaps:

  • Generic usage descriptions ("use for buttons")
  • Missing accessibility specifications
  • No guidance on when NOT to use component

Integration Problems:

  • Figma-code prop mismatches (different naming/types)
  • Outdated Code Connect mappings after component changes
  • Missing Storybook controls for new props

Process Failures:

  • Skipping definition-of-done checklist
  • Adding components without version impact assessment
  • No communication plan for breaking changes
0
Grade A-AI Skill Framework
Scorecard
Criteria Breakdown
Quick Start
15/15
Workflow
15/15
Examples
18/20
Completeness
20/20
Format
15/15
Conciseness
13/15