All skills
github avatar

/penpot-uiux-design

@a6ac908 official
by githubgithub/awesome-copilot40k stars
5,040

Comprehensive guide for creating professional UI/UX designs in Penpot using MCP tools. Use this skill when: (1) Creating new UI/UX designs for web, mobile, or desktop applications, (2) Building design systems with components and tokens, (3) Designing dashboards, forms, navigation, or landing pages, (4) Applying accessibility standards and best practices, (5) Following platform guidelines (iOS, Android, Material Design), (6) Reviewing or improving existing Penpot designs for usability. Triggers: "design a UI", "create interface", "build layout", "design dashboard", "create form", "design landing page", "make it accessible", "design system", "component library".

Use this Skill: https://skilld.dev/gh/github/awesome-copilot/penpot-uiux-design

This session only. Nothing lands on disk.

referencescomponent-patterns.md

≈2.9k tokens on demand. Your agent reads this file only when SKILL.md points to it.

UI Component Patterns Reference

Buttons

Button Types

Type Purpose Visual Treatment
Primary Main action on page Solid fill, brand color
Secondary Supporting actions Outline or muted fill
Tertiary Low-emphasis actions Text-only, underline optional
Destructive Delete/remove actions Red color, confirmation required
Ghost Minimal UI, icon buttons Transparent, subtle hover

Button States

Default    → Resting state, clearly interactive
Hover      → Cursor over (desktop): darken 10%, subtle shadow
Active     → Being pressed: darken 20%, slight scale down
Focus      → Keyboard selected: visible outline ring
Disabled   → Not available: 50% opacity, cursor: not-allowed
Loading    → Processing: spinner replaces or accompanies label

Button Specifications

  • Minimum size: 44×44px (touch target)
  • Padding: 12-16px horizontal, 8-12px vertical
  • Border radius: 4-8px (consistent across app)
  • Font weight: Medium or Semibold (600-700)
  • Text: Sentence case, 2-4 words max

Button Label Patterns

✓ Save Changes        ✗ Submit
✓ Add to Cart         ✗ Click Here
✓ Create Account      ✗ OK
✓ Download PDF        ✗ Go
✓ Start Free Trial    ✗ Continue

Forms

Form Layout Guidelines

  • Single column preferred: Reduces cognitive load
  • Top-aligned labels: Fastest completion times
  • Logical grouping: Related fields together
  • Smart defaults: Pre-fill when possible

Input Field Anatomy

┌─ Label (required) ─────────────────────────┐
│                                            │
│  ┌────────────────────────────────────┐   │
│  │ Placeholder text...                 │   │
│  └────────────────────────────────────┘   │
│  Helper text or error message              │
└────────────────────────────────────────────┘

Input States

State Border Background Additional
Default Gray (#D1D5DB) White -
Focus Primary color White Shadow/glow
Filled Gray White Checkmark optional
Error Red (#EF4444) Light red tint Error icon + message
Disabled Light gray Gray (#F3F4F6) 50% opacity text

Validation Timing

  • On blur: Validate when user leaves field
  • On change (after error): Clear error as user types correct input
  • On submit: Final validation before processing
  • Never on focus: Don't show errors before user types

Error Message Guidelines

✓ "Email address is required"
✓ "Password must be at least 8 characters"
✓ "Please enter a valid phone number (e.g., 555-123-4567)"

✗ "Invalid input"
✗ "Error"
✗ "This field is required" (generic)

Form Best Practices

  • Mark optional fields, not required (fewer asterisks)
  • Show password requirements before errors occur
  • Use input masks for formatted data (phone, date)
  • Preserve data on errors (don't clear the form)
  • Provide clear success confirmation

Navigation

Navigation Patterns

Top Navigation Bar
┌─────────────────────────────────────────────────────┐
│ Logo    Nav Item  Nav Item  Nav Item    [Search] [User] │
└─────────────────────────────────────────────────────┘
  • Best for: Marketing sites, simple apps
  • Max items: 5-7 top-level links
  • Mobile: Collapse to hamburger menu
Sidebar Navigation
┌────────┬────────────────────────────────┐
│ Logo   │ Content Area                   │
├────────┤                                │
│ Nav 1  │                                │
│ Nav 2  │                                │
│ Nav 3  │                                │
│        │                                │
│ ────── │                                │
│ Nav 4  │                                │
│ Nav 5  │                                │
└────────┴────────────────────────────────┘
  • Best for: Dashboards, complex apps
  • Width: 200-280px expanded, 64px collapsed
  • Mobile: Overlay drawer
Bottom Navigation (Mobile)
┌─────────────────────────────────────┐
│           Content Area              │
│                                     │
├─────────────────────────────────────┤
│  🏠    🔍    ➕    💬    👤        │
│ Home  Search Add  Chat  Profile     │
└─────────────────────────────────────┘
  • Max items: 3-5 destinations
  • Best for: Primary app sections
  • Always visible: Persistent navigation
Breadcrumbs
Home > Products > Electronics > Headphones
  • Use for: Deep hierarchies (3+ levels)
  • Current page: Not clickable, different style
  • Separator: > or / or chevron icon

Tab Navigation

┌─────────┬─────────┬─────────┬─────────┐
│ Tab 1   │ Tab 2   │ Tab 3   │ Tab 4   │
└─────────┴─────────┴─────────┴─────────┘
│                                       │
│        Tab Content Area               │
│                                       │
└───────────────────────────────────────┘
  • Max tabs: 3-5 for clarity
  • Active indicator: Underline or background
  • Use for: Related content within same page

Cards

Card Anatomy

┌─────────────────────────────────┐
│ ░░░░░░░ Image/Media ░░░░░░░░░░ │
├─────────────────────────────────┤
│ Category Label                  │
│ Card Title                      │
│ Description text that may       │
│ span multiple lines...          │
│                                 │
│ [Action Button]  [Secondary]    │
└─────────────────────────────────┘

Card Guidelines

  • Consistent sizing: Use grid, equal heights
  • Content hierarchy: Image → Title → Description → Actions
  • Padding: 16-24px internal spacing
  • Border radius: 8-12px (matching buttons)
  • Shadow: Subtle elevation (0 2px 4px rgba(0,0,0,0.1))

Modals and Dialogs

Modal Structure

┌─────────────────────────────────────┐
│ Modal Title                    [×]  │
├─────────────────────────────────────┤
│                                     │
│ Modal content goes here.            │
│ Keep it focused on one task.        │
│                                     │
├─────────────────────────────────────┤
│           [Cancel]  [Confirm]       │
└─────────────────────────────────────┘

Modal Guidelines

  • Size: 400-600px width (desktop), full-width minus margins (mobile)
  • Overlay: Semi-transparent dark background (rgba(0,0,0,0.5))
  • Close options: X button, overlay click, Escape key
  • Focus trap: Keep keyboard focus within modal
  • Primary action: Right-aligned, visually prominent

Dashboards

Dashboard Layout Principles

  1. Most important metrics at top: KPIs, summary cards
  2. Progressive detail: Overview → Drill-down capability
  3. Consistent card sizes: Use grid system
  4. Minimal chartjunk: Only data-serving visuals
  5. Actionable insights: Highlight anomalies

Data Visualization Selection

Data Type Chart Type
Comparison across categories Bar chart
Trend over time Line chart
Part of whole Pie (≤5 slices) or Donut
Distribution Histogram
Correlation Scatter plot
Geographic Map
Single metric Big number + sparkline

Dashboard Best Practices

  • Limit to 5-9 widgets per view
  • Align to grid: Consistent gutters and sizing
  • Filter controls: Top or sidebar, always visible
  • Date range selector: Common need, make prominent
  • Export options: PDF, CSV for data tables
  • Responsive: Stack cards on smaller screens

Empty States

Empty State Components

┌─────────────────────────────────────┐
│                                     │
│         [Illustration/Icon]         │
│                                     │
│      No projects yet                │
│                                     │
│   Create your first project to      │
│   start organizing your work.       │
│                                     │
│       [Create Project]              │
│                                     │
└─────────────────────────────────────┘

Empty State Guidelines

  • Friendly illustration: Not just "No data"
  • Explain value: Why create something?
  • Clear CTA: Primary action to fix empty state
  • Keep it brief: 1-2 sentences max

Loading States

Loading Patterns

Duration Pattern
<1 second No indicator (feels instant)
1-3 seconds Spinner or progress indicator
3-10 seconds Skeleton screens + progress
>10 seconds Progress bar + explanation

Skeleton Screen

┌─────────────────────────────────────┐
│ ░░░░░░░░░░░░ ░░░░░░░░░░           │
├─────────────────────────────────────┤
│ ░░░░░░░░░░░░░░░░░░░░░░░░░         │
│ ░░░░░░░░░░░░░░░░░░░               │
│ ░░░░░░░░░░░░░░░░░░░░░░░           │
└─────────────────────────────────────┘
  • Match layout of loaded content
  • Use subtle animation (shimmer/pulse)
  • Show actual content structure

Source: SKILL.md on GitHub

1 warning17d5 checks · Risk SAFE
  • Gen Agent Trust Hub17d

    The skill provides a comprehensive guide for using Penpot for UI/UX design via an official MCP server. It includes installation instructions for the server, UI/UX design principles, and detailed reference documents for accessibility standards and component patterns. All external resources and tools identified are standard for the tool's functionality and originate from well-known sources.

  • Socket17d

    No alerts

  • Snyk17d

    Risk: LOW · No issues

  • Runlayer7mo

    5/5 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at a6ac908. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 20 hours ago.

Activeupdated 8 months ago
  • MCP
  • penpot
  • ui-design
  • ux-design
  • design-systems
  • accessibility
  • component-library
  • figma-alternative
  • responsive-design

README badge

README badge for github/awesome-copilot/penpot-uiux-design

Guides UI/UX design in Penpot using the penpot-mcp server, with tools to create shapes, apply layouts, export assets, and follow accessibility standards. Covers design systems, component patterns, responsive layouts for mobile and desktop, and practical workflows for dashboards, forms, and navigation.

Generated from the current SKILL.md.

Does this skill work with Figma or only Penpot?
This skill is specific to Penpot. It uses the penpot-mcp server and Penpot's JavaScript plugin API, and does not support Figma.
Do I need to install the Penpot MCP server locally to use this skill?
Yes. The skill requires the penpot-mcp server running locally (cloned from GitHub, npm installed, and started). The skill includes troubleshooting steps if setup fails.
Can I use this skill if I already have a design system or component library?
Yes. The skill first checks for existing design systems, components, colors, and tokens in your Penpot file, and uses those instead of the default tokens provided.
What if I want to design for specific platforms like iOS or Android?
The skill includes platform guidelines (iOS, Android, Material Design) as reference files and covers platform-specific screen sizes, touch targets, and component specs.
Can this skill generate or export CSS from my Penpot designs?
Yes. The skill can extract CSS from selections using Penpot's generateStyle API via the mcp__penpot__execute_code tool.

Generated from the current SKILL.md. These answers refresh after source changes.