mcpField
P
planetscale-ui-skills

planetscale-ui-skills

github.com/ihlamuryDesign & UI102242 installsUpdated 37w ago
Repository

About planetscale-ui-skills

A set of Planetscale-style interface guidelines for AI agents building dark-mode UIs and related design systems. It specifies color, typography, spacing, layout, interaction, and performance constraints.

Key features

  1. 01Dark backgrounds and semantic color tokens
  2. 02Inter font and typography rules
  3. 034px spacing grid and border rules
  4. 04Focus, hover, and disabled-state constraints
  5. 05Interaction, animation, and performance guidance

Use cases

  1. 01Building Planetscale-style interfaces
  2. 02Giving AI agents UI implementation guidelines
  3. 03Creating design systems with Inter and a 4px grid

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/ihlamury/design-skills --skill planetscale-ui-skills

After installing, type/planetscale-ui-skillsin Claude Code to confirm it loaded.

Bundled filesmetadata.json

Details

From the project README

Planetscale UI Skills

Opinionated constraints for building Planetscale-style interfaces with AI agents.

When to Apply

Reference these guidelines when:

  • Building dark-mode interfaces
  • Creating Planetscale-inspired design systems
  • Implementing UIs with Inter font and 4px grid

Colors

  • MUST use dark backgrounds (lightness < 20) for primary surfaces - detected lightness: 0
  • MUST use #000000 as page background (surface-base)
  • MUST use #7967D3 for primary actions and focus states (accent)
  • SHOULD reduce color palette (currently 23 colors detected)
  • MUST maintain text contrast ratio of at least 4.5:1 for accessibility
Semantic Tokens
TokenHEXRGBUsage
surface-base#000000rgb(0,0,0)Page background
surface-raised#F8F8F9rgb(248,248,249)Cards, modals, raised surfaces
surface-overlay#EC4011rgb(236,64,17)Overlays, tooltips, dropdowns
text-primary#202020rgb(32,32,32)Headings, body text
text-secondary#787878rgb(120,120,120)Secondary, muted text
text-tertiary#54565Crgb(84,86,92)Additional text
border-default#D44927rgb(212,73,39)Subtle borders, dividers
destructive#EC4011rgb(236,64,17)Error states, delete actions
success#41D731rgb(65,215,49)Success states, confirmations
accent#7967D3rgb(121,103,211)Primary actions, links, focus

Typography

  • MUST use Inter as primary font family
  • SHOULD use single font family for consistency
  • MUST use 51px / 700 for primary headings
  • MUST use 17px / 400 for body text
  • SHOULD reduce font weights (currently 5 detected)
  • MUST use text-balance for headings and text-pretty for body text
  • SHOULD use tabular-nums for numeric data
  • NEVER modify letter-spacing unless explicitly requested
Text Styles
StyleFontSizeWeightColorCount
heading-1Inter51px700#DF5C2E1
text-44pxInter44px700#36F91F1
text-40pxInter40pxextra_bold#2020201
text-39pxInter39pxextra_bold#1A1A1A1
text-38pxInter38px700#1E1E1E1
text-35pxInter35pxextra_bold#1D1D1D1
text-34pxInter34px700#1A1A1A1
text-31pxInter31px700#1414141
text-30pxInter30px700#1A1A1A1
text-30pxInter30px400#D76B601
Typography Reference

Font Families:

  • Inter (used 55x)

Font Sizes: 11px, 12px, 13px, 14px, 15px, 16px, 17px, 18px, 21px, 22px, 23px, 24px, 25px, 26px, 29px, 30px, 31px, 34px, 35px, 38px, 39px, 40px, 44px, 51px

Spacing

  • MUST use 4px grid for spacing
  • SHOULD use spacing from scale: 3px, 4px, 5px, 6px, 7px, 25px, 28px, 32px
  • SHOULD use 38px as default gap between elements
  • NEVER use arbitrary spacing values (use design scale)
  • SHOULD maintain consistent padding within containers

Borders

  • MUST use 1px border width consistently
  • NEVER use arbitrary border-radius values (use design scale)
  • SHOULD use subtle borders (1px) for element separation

Layout

  • MUST design for 1920px base viewport width
  • SHOULD use consistent element widths: 220px, 221px, 2px, 30px, 1px
  • SHOULD maintain text-heavy layout with clear hierarchy
  • NEVER use h-screen, use h-dvh for full viewport height
  • MUST respect safe-area-inset for fixed elements
  • SHOULD use size-* for square elements instead of w-* + h-*
Detected Layout Patterns
  • Main Content: width: 1920px, height: 1041px
  • Main Content: width: 1114px, height: 664px
  • Main Content: width: 1104px, height: 667px
  • Header: height: 39px

Components

Buttons
VariantBackgroundTextBorderHeightRadius
Ghosttransparent#F0B095none--

Interactive States

Focus
  • MUST use 2px outline with accent color (#7967D3)
  • MUST use 2px outline-offset
  • NEVER remove focus indicators
Hover
  • Buttons (primary): lighten background by 10%
  • Buttons (secondary): use #F8F8F9 background
  • List items: use #F8F8F9 background
Disabled
  • MUST use opacity: 0.5
  • MUST use cursor: not-allowed

Interaction

  • MUST use an AlertDialog for destructive or irreversible actions
  • SHOULD use structural skeletons for loading states
  • MUST show errors next to where the action happens
  • NEVER block paste in input or textarea elements
  • MUST add an aria-label to icon-only buttons

Animation

  • NEVER add animation unless it is explicitly requested
  • MUST animate only compositor props (transform, opacity)
  • NEVER animate layout properties (width, height, top, left, margin, padding)
  • SHOULD use ease-out on entrance animations
  • NEVER exceed 200ms for interaction feedback
  • SHOULD respect prefers-reduced-motion

Performance

  • NEVER animate large blur() or backdrop-filter surfaces
  • NEVER apply will-change outside an active animation
  • NEVER use useEffect for anything that can be expressed as render logic

Comments

Markdown supported