pluginagentmarketplace

prototyping

Master prototyping - Figma, wireframes, interactive prototypes, user testing, iteration

pluginagentmarketplace 3 Updated 9mo ago

Resources

3
GitHub

Install

npx skillscat add pluginagentmarketplace/custom-plugin-ux-design/prototyping

Install via the SkillsCat registry.

SKILL.md

Prototyping Skill

Atomic Skill: Create rapid, testable prototypes that validate design decisions

Purpose

This skill provides structured approaches to wireframing, prototyping, and design validation.

Skill Invocation

Skill("custom-plugin-ux-design:prototyping")

Parameter Schema

Input Parameters

interface PrototypingParams {
  // Required
  type: "wireframe" | "prototype" | "test" | "iterate";
  scope: string;

  // Optional
  fidelity?: "low" | "medium" | "high";
  platform?: "web" | "mobile" | "desktop";
  tool?: "figma" | "sketch" | "framer" | "html";
  testing?: {
    participants: number;
    scenarios: string[];
  };
}

Validation Rules

type:
  type: enum
  required: true
  values: [wireframe, prototype, test, iterate]

scope:
  type: string
  required: true
  min_length: 5

fidelity:
  type: enum
  default: "medium"

testing.participants:
  type: number
  min: 3
  max: 50
  default: 5

Execution Flow

PROTOTYPING EXECUTION
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

Step 1: DEFINE SCOPE
โ”œโ”€โ”€ Identify key flows
โ”œโ”€โ”€ Prioritize screens
โ””โ”€โ”€ Set fidelity level

Step 2: CREATE WIREFRAMES
โ”œโ”€โ”€ Sketch layouts
โ”œโ”€โ”€ Define content blocks
โ””โ”€โ”€ Map navigation

Step 3: BUILD PROTOTYPE
โ”œโ”€โ”€ Apply visual design
โ”œโ”€โ”€ Add interactions
โ””โ”€โ”€ Connect flows

Step 4: TEST WITH USERS
โ”œโ”€โ”€ Prepare test script
โ”œโ”€โ”€ Conduct sessions
โ””โ”€โ”€ Collect feedback

Step 5: ITERATE
โ”œโ”€โ”€ Analyze findings
โ”œโ”€โ”€ Prioritize changes
โ””โ”€โ”€ Update prototype

โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

Retry Logic

retry_config:
  max_attempts: 3
  backoff_type: exponential
  initial_delay_ms: 1000
  max_delay_ms: 10000
  retryable_errors:
    - SYNC_FAILED
    - EXPORT_TIMEOUT
    - SESSION_INTERRUPTED

Logging Hooks

interface PrototypeLog {
  timestamp: string;
  event: "wireframe_created" | "prototype_built" | "test_started" | "iteration_complete";
  screens_count: number;
  interactions_count: number;
  test_sessions: number;
  success_rate: number;
}

Learning Modules

Module 1: Wireframing

WIREFRAME TYPES
โ”œโ”€โ”€ Sketch (paper, whiteboard)
โ”œโ”€โ”€ Low-fidelity (grayscale, boxes)
โ”œโ”€โ”€ Mid-fidelity (structure, some detail)
โ””โ”€โ”€ High-fidelity (near-final)

WIREFRAME COMPONENTS
โ”œโ”€โ”€ Layout grids
โ”œโ”€โ”€ Content placeholders
โ”œโ”€โ”€ Navigation elements
โ”œโ”€โ”€ Form elements
โ””โ”€โ”€ Annotations

Module 2: Figma Workflows

FIGMA BEST PRACTICES
โ”œโ”€โ”€ File organization
โ”‚   โ”œโ”€โ”€ Pages for flows
โ”‚   โ”œโ”€โ”€ Frames for screens
โ”‚   โ””โ”€โ”€ Components for reuse
โ”œโ”€โ”€ Component structure
โ”‚   โ”œโ”€โ”€ Base components
โ”‚   โ”œโ”€โ”€ Variants
โ”‚   โ””โ”€โ”€ Instances
โ”œโ”€โ”€ Prototyping
โ”‚   โ”œโ”€โ”€ Connections
โ”‚   โ”œโ”€โ”€ Interactions
โ”‚   โ””โ”€โ”€ Animations
โ””โ”€โ”€ Collaboration
    โ”œโ”€โ”€ Comments
    โ”œโ”€โ”€ Dev mode
    โ””โ”€โ”€ Handoff

Module 3: Interactive Prototyping

INTERACTION TYPES
โ”œโ”€โ”€ Click/tap navigation
โ”œโ”€โ”€ Hover states
โ”œโ”€โ”€ Scroll behaviors
โ”œโ”€โ”€ Input interactions
โ”œโ”€โ”€ Animations
โ””โ”€โ”€ Smart animate

PROTOTYPE FLOWS
โ”œโ”€โ”€ Happy path (success)
โ”œโ”€โ”€ Error paths
โ”œโ”€โ”€ Edge cases
โ””โ”€โ”€ Empty states

Module 4: User Testing

TEST PREPARATION
โ”œโ”€โ”€ Define objectives
โ”œโ”€โ”€ Write test script
โ”œโ”€โ”€ Prepare scenarios
โ”œโ”€โ”€ Set up recording
โ””โ”€โ”€ Recruit participants

TEST EXECUTION
โ”œโ”€โ”€ Introduction (5 min)
โ”œโ”€โ”€ Tasks (20-30 min)
โ”œโ”€โ”€ Debrief (5 min)
โ””โ”€โ”€ Documentation

ANALYSIS
โ”œโ”€โ”€ Task success rates
โ”œโ”€โ”€ Time on task
โ”œโ”€โ”€ Error frequency
โ”œโ”€โ”€ Satisfaction ratings
โ””โ”€โ”€ Qualitative insights

Module 5: Iteration Cycles

ITERATION FRAMEWORK
โ”œโ”€โ”€ Collect feedback
โ”œโ”€โ”€ Identify patterns
โ”œโ”€โ”€ Prioritize changes
โ”œโ”€โ”€ Implement updates
โ”œโ”€โ”€ Validate improvements
โ””โ”€โ”€ Document decisions

ITERATION VELOCITY
โ”œโ”€โ”€ Quick wins (< 1 hour)
โ”œโ”€โ”€ Standard changes (< 1 day)
โ”œโ”€โ”€ Major revisions (< 1 week)
โ””โ”€โ”€ Structural changes (> 1 week)

Error Handling

Error Code Description Recovery
PT-001 Incomplete flow Add missing screens
PT-002 Broken link Fix connections
PT-003 Test invalid Refine methodology
PT-004 Scope exceeded Refocus on MVP
PT-005 Sync failed Manual backup

Troubleshooting

Problem: Users confused during testing

Diagnosis:
โ”œโ”€โ”€ Check: Task clarity
โ”œโ”€โ”€ Check: Prototype completeness
โ”œโ”€โ”€ Check: Missing affordances
โ””โ”€โ”€ Solution: Improve setup

Steps:
1. Review task wording
2. Add interaction hints
3. Fill in missing screens
4. Brief users properly

Problem: Prototype doesn't match design

Diagnosis:
โ”œโ”€โ”€ Check: Design system sync
โ”œโ”€โ”€ Check: Component versions
โ”œโ”€โ”€ Check: Manual overrides
โ””โ”€โ”€ Solution: Resync sources

Steps:
1. Update component library
2. Replace broken instances
3. Remove manual overrides
4. Verify with design team

Unit Test Templates

describe("PrototypingSkill", () => {
  describe("wireframe creation", () => {
    it("should include all specified screens", async () => {
      const result = await invoke({
        type: "wireframe",
        scope: "onboarding flow",
        screens: ["welcome", "signup", "profile", "complete"]
      });
      expect(result.screens.length).toBe(4);
    });
  });

  describe("prototype interactions", () => {
    it("should connect all screens", async () => {
      const result = await invoke({
        type: "prototype",
        scope: "checkout flow"
      });
      expect(result.orphaned_screens).toHaveLength(0);
    });
  });

  describe("test execution", () => {
    it("should generate success metrics", async () => {
      const result = await invoke({
        type: "test",
        testing: { participants: 5, scenarios: ["complete purchase"] }
      });
      expect(result.metrics.task_success_rate).toBeDefined();
    });
  });
});

Quality Metrics

Metric Target Measurement
Flow coverage > 90% Screens connected
Interaction completeness > 95% States defined
Test success rate > 80% Task completion
Iteration velocity < 24h Time per cycle

Version History

Version Date Changes
1.0.0 2025-12-30 Production-grade upgrade