Install
openclaw skills install graphic-designerExpert visual design guidance for UI and UX of GUI apps and websites. Use when asked to design, critique, or improve interface visuals, color palettes, typography, layout grids, design tokens, component states, micro-interactions, or accessibility of screens. Covers visual hierarchy, Gestalt principles, Laws of UX (Fitts, Hick, aesthetic-usability), the 60-30-10 color rule, bento grids, glassmorphism, dopamine palettes, WCAG contrast, motion easing, and 2026 trends like tactile maximalism and adaptive UI.
openclaw skills install graphic-designerApply professional UI/UX visual design judgment to mockups, components, screens, and full interfaces. Translate vague aesthetic requests ("make it pop", "looks dated", "feels cluttered") into concrete, defensible design decisions grounded in perception research and current platform conventions.
Every visual decision should answer three questions in order:
Use these as starting points, then deviate with reason:
| System | Default | Notes |
|---|---|---|
| Color ratio | 60-30-10 (dominant / secondary / accent) | Accent is reserved for primary CTAs and critical state |
| Type scale | 1.250 (major third) or 1.333 (perfect fourth) | Tighter scales feel editorial; wider scales feel marketing |
| Base unit | 4px or 8px spacing grid | Every padding/margin is a multiple — no padding: 13px |
| Body text | 16px minimum on web, 17pt on iOS, 14sp on Android | Below 16px on web fails most accessibility audits |
| Line length | 45–75 characters | Long-form prose; UI labels can be shorter |
| Line height | 1.4–1.6 for body, 1.1–1.25 for display | Tight headings, generous body |
| Corner radius | One scale (e.g., 4 / 8 / 16 / full) | Mixing arbitrary radii ages a UI fast |
| Elevation | 3–5 shadow tiers max | Use them semantically (resting / raised / overlay / modal) |
#E6E6E6 on #121212 style off-blacks.opsz) when available.font-variant-numeric: tabular-nums) for tables, dashboards, and any column of numbers. Proportional figures everywhere else.prefers-reduced-motion fallback.cubic-bezier(0.4, 0, 0.2, 1) (Material "standard") is a safe default. Linear easing should only appear on indeterminate spinners.prefers-reduced-motion — replace transforms with opacity fades, never remove feedback entirely.color-blue-500) → semantic (color-action-primary) → component (button-primary-bg). Components reference semantic, never primitive.Apply selectively — trendy ≠ correct for every product.
margin-top: 13px is the canary for a design system in collapse.width/height/top/left for transitions — animate transform and opacity to stay on the compositor thread.| Symptom | Likely Cause | Fix |
|---|---|---|
| "Feels cluttered" | Weak hierarchy, no whitespace, equal-weight elements competing | Demote secondary elements, increase spacing, raise contrast on the one primary action |
| "Looks dated" | Tight radii + flat fills + 2018 sans-serif + heavy borders | Soften radii to one scale, replace borders with spacing or subtle elevation, refresh type |
| "Feels cheap" | Inconsistent spacing, mixed corner radii, low-quality imagery, default OS shadows | Enforce spacing scale, unify radii, audit photography/iconography, design custom shadows |
| "CTA gets lost" | Accent color used everywhere; CTA blends in | Reserve accent for CTA only; demote other accent uses to secondary palette |
| "Brand doesn't pop" | Brand color used as background everywhere, not as accent | Move brand to accent role; pick a neutral dominant |
| "Inaccessible per audit" | Insufficient contrast, missing focus rings, hover-only affordances | Run automated audit (axe), then manual keyboard + screen reader pass |
| "Animations feel janky" | Animating layout properties or running on main thread | Switch to transform/opacity; throttle non-essential motion; respect prefers-reduced-motion |