Penpot DESIGN.md

Brands

Open-source design and prototyping tool with a dark canvas-first aesthetic — obsidian surfaces, violet-indigo accents, and precision design-tool UI patterns.

Raw DESIGN.md

At a glance

Group
Brands
Main color
#7c3aedPurple design systems
Fonts
Work SansJetBrains Mono

Colors in this file

  • #7c3aed

    border-color

  • #2e2e2e

    Unnamed

  • #f0f0f0

    Unnamed

  • #9c9c9c

    Unnamed

  • #2c2c2c

    Unnamed

  • #272727

    Unnamed

  • #1a1a1a

    background

  • #3d3d3d

    Unnamed

  • #ffffff

    background

  • #6d28d9

    Unnamed

Open-source design and prototyping tool with a dark canvas-first aesthetic — obsidian surfaces, violet-indigo accents, and precision design-tool UI patterns.

1. Visual Theme & Atmosphere

Penpot is an open-source alternative to Figma built on web standards. The design language mirrors a professional design tool: a dark surrounding canvas with white artboards, precise panel controls, and a clean hierarchical layers panel. Violet-indigo accents mark selection states and interactive handles. The UI is dense but organized, built to support hours of focused design work.

2. Color Palette & Roles

TokenHexRole
--color-primary#7C3AEDBrand violet, selection handles, CTAs
--color-primary-dark#6D28D9Hover/active
--color-primary-lightrgba(124,58,237,0.15)Selection overlay
--color-selection#7C3AEDBounding box, resize handles
--color-bg-canvas#2C2C2CCanvas area background
--color-bg-base#1E1E1EApp shell background
--color-bg-panel#272727Properties/layers panels
--color-bg-input#1A1A1AInput fields in panels
--color-bg-elevated#333333Dropdowns, tooltips
--color-border#3D3D3DDefault borders
--color-border-subtle#2E2E2EDividers
--color-artboard#FFFFFFArtboard background
--color-text-primary#F0F0F0Panel labels, headings
--color-text-secondary#9C9C9CSub-labels, hints
--color-text-muted#555555Placeholder, disabled
--color-success#22C55ESaved, exported
--color-error#EF4444Error states

3. Typography Rules

css--font-sans: 'Work Sans', 'Inter', -apple-system, sans-serif;
--font-mono: 'JetBrains Mono', 'Fira Code', monospace;
--font-size-xs: 10px;
--font-size-sm: 11px;
--font-size-base: 12px;
--font-size-md: 14px;
--font-size-lg: 16px;
--font-size-xl: 20px;
--font-weight-regular: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--line-height-tight: 1.2;
--line-height-base: 1.4;
ElementSizeWeightLine Height
Panel Section Header11px6001.2
Property Label11px5001.3
Layer Name12px4001.4
Input Value12px4001.4
Page Title12px6001.4
Tooltip11px4001.4

4. Component Stylings

css/* Panel Section Header */
.panel-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px 6px;
  font-size: 11px;
  font-weight: 600;
  color: #9C9C9C;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  border-bottom: 1px solid #2E2E2E;
}

/* Numeric Input (design values) */
.design-input {
  background: #1A1A1A;
  border: 1px solid #3D3D3D;
  border-radius: 4px;
  padding: 5px 8px;
  font-size: 12px;
  font-family: var(--font-mono);
  color: #F0F0F0;
  text-align: center;
  width: 64px;
  transition: border-color 0.1s;
}
.design-input:focus {
  outline: none;
  border-color: #7C3AED;
  box-shadow: 0 0 0 2px rgba(124,58,237,0.2);
}

/* Layer Row */
.layer-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 12px;
  border-radius: 4px;
  cursor: pointer;
  transition: background 0.08s;
}
.layer-row:hover { background: #2E2E2E; }
.layer-row--selected { background: rgba(124,58,237,0.15); }
.layer-row__icon { color: #9C9C9C; flex-shrink: 0; }
.layer-row__name {
  font-size: 12px;
  color: #F0F0F0;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Selection Handle */
.selection-handle {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: #FFFFFF;
  border: 1.5px solid #7C3AED;
  position: absolute;
}

/* Toolbar Button */
.toolbar-icon-btn {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  border: none;
  background: transparent;
  color: #9C9C9C;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.08s, color 0.08s;
}
.toolbar-icon-btn:hover { background: #2E2E2E; color: #F0F0F0; }
.toolbar-icon-btn--active { background: rgba(124,58,237,0.15); color: #7C3AED; }

5. Layout Principles

TokenValueUsage
--spacing-xs4pxLayer indent, handle offset
--spacing-sm6pxInput vertical padding
--spacing-md8pxBetween design inputs
--spacing-lg16pxPanel horizontal padding
--left-panel-width220pxLayers + pages panel
--right-panel-width248pxDesign properties panel
--toolbar-width48pxLeft tool column
--radius-xs2pxSelection handles
--radius-sm4pxInputs, layer rows
--radius-md6pxToolbar buttons

6. Depth & Elevation

css.shadow-panel { box-shadow: 2px 0 8px rgba(0,0,0,0.4); }
.shadow-dropdown { box-shadow: 0 8px 24px rgba(0,0,0,0.6); }
.shadow-selection { box-shadow: 0 0 0 1px #7C3AED; }

7. Do's and Don'ts

Do:

  • Use 10–12px font sizes in panels — design tools are information-dense
  • Keep numeric inputs monospace and center-aligned with fixed widths
  • Show bounding box + handles in violet on any selection
  • Group panel sections with uppercase muted headers

Don't:

  • Don't use large padding in panels — every pixel counts in a design tool
  • Don't use rounded corners larger than 6px in panel UI
  • Don't make the artboard compete with the canvas background — it must always be white
  • Don't use icon labels — tooltips on hover are sufficient

8. Responsive Behavior

BreakpointMin WidthBehavior
Desktop1280pxMinimum usable: left panel + canvas + right panel
Wide1440pxComfortable default layout
Ultra-wide1920pxWider canvas area, same panel widths

9. Agent Prompt Guide

You are designing for Penpot — an open-source design and prototyping tool.
UI panels are extremely dense: 11–12px text, tight padding, dark surfaces (#272727).
Left panel shows layers hierarchy; right panel shows design properties in small monospace inputs.
Canvas background is dark (#2C2C2C); artboards are always white.
Selections use violet (#7C3AED) bounding boxes with white resize handles.
Toolbar icons are 32px, icon-only with tooltips on hover.
Tone is precision-first, design-tool-native, and open-source professional.

Use it with your agent

Save the file as DESIGN.md in your project root, then ask your agent to follow it for UI work. Or let the agent fetch it over MCP.

Download

curl -o DESIGN.md https://www.uiskillbook.com/design-md/penpot.md

MCP server

https://www.uiskillbook.com/mcp

MCP tool call

get_design_md({ "slug": "penpot" })