CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

frontend-design

tessl i github:jdrhyne/agent-skills --skill frontend-design

Expert frontend design guidelines for creating beautiful, modern UIs. Use when building landing pages, dashboards, or any user interface.

77%

Overall

SKILL.md
Review
Evals

Frontend Design Skill

Use this skill when creating UI components, landing pages, dashboards, or any frontend design work.

Design Workflow

Follow this structured approach for UI design:

  1. Layout Design — Think through component structure, create ASCII wireframes
  2. Theme Design — Define colors, fonts, spacing, shadows
  3. Animation Design — Plan micro-interactions and transitions
  4. Implementation — Generate the actual code

1. Layout Design

Before coding, sketch the layout in ASCII format:

┌─────────────────────────────────────┐
│         HEADER / NAV BAR            │
├─────────────────────────────────────┤
│                                     │
│            HERO SECTION             │
│         (Title + CTA)               │
│                                     │
├─────────────────────────────────────┤
│   FEATURE   │  FEATURE  │  FEATURE  │
│     CARD    │   CARD    │   CARD    │
├─────────────────────────────────────┤
│            FOOTER                   │
└─────────────────────────────────────┘

2. Theme Guidelines

Color Rules:

  • NEVER use generic bootstrap-style blue (#007bff) — it looks dated
  • Prefer oklch() for modern color definitions
  • Use semantic color variables (--primary, --secondary, --muted, etc.)
  • Consider both light and dark mode from the start

Font Selection (Google Fonts):

Sans-serif: Inter, Roboto, Poppins, Montserrat, Outfit, Plus Jakarta Sans, DM Sans, Space Grotesk
Monospace: JetBrains Mono, Fira Code, Source Code Pro, IBM Plex Mono, Space Mono, Geist Mono
Serif: Merriweather, Playfair Display, Lora, Source Serif Pro, Libre Baskerville
Display: Architects Daughter, Oxanium

Spacing & Shadows:

  • Use consistent spacing scale (0.25rem base)
  • Shadows should be subtle — avoid heavy drop shadows
  • Consider using oklch() for shadow colors too

3. Theme Patterns

Modern Dark Mode (Vercel/Linear style):

:root {
  --background: oklch(1 0 0);
  --foreground: oklch(0.145 0 0);
  --primary: oklch(0.205 0 0);
  --primary-foreground: oklch(0.985 0 0);
  --secondary: oklch(0.970 0 0);
  --muted: oklch(0.970 0 0);
  --muted-foreground: oklch(0.556 0 0);
  --border: oklch(0.922 0 0);
  --radius: 0.625rem;
  --font-sans: Inter, system-ui, sans-serif;
}

Neo-Brutalism (90s web revival):

:root {
  --background: oklch(1 0 0);
  --foreground: oklch(0 0 0);
  --primary: oklch(0.649 0.237 26.97);
  --secondary: oklch(0.968 0.211 109.77);
  --accent: oklch(0.564 0.241 260.82);
  --border: oklch(0 0 0);
  --radius: 0px;
  --shadow: 4px 4px 0px 0px hsl(0 0% 0%);
  --font-sans: DM Sans, sans-serif;
  --font-mono: Space Mono, monospace;
}

Glassmorphism:

.glass {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 1rem;
}

4. Animation Guidelines

Micro-syntax for planning:

button: 150ms [S1→0.95→1] press
hover: 200ms [Y0→-2, shadow↗]
fadeIn: 400ms ease-out [Y+20→0, α0→1]
slideIn: 350ms ease-out [X-100→0, α0→1]
bounce: 600ms [S0.95→1.05→1]

Common patterns:

  • Entry animations: 300-500ms, ease-out
  • Hover states: 150-200ms
  • Button press: 100-150ms
  • Page transitions: 300-400ms

5. Implementation Rules

Tailwind CSS:

<!-- Import via CDN for prototypes -->
<script src="https://cdn.tailwindcss.com"></script>

Flowbite (component library):

<link href="https://cdn.jsdelivr.net/npm/flowbite@2.0.0/dist/flowbite.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/flowbite@2.0.0/dist/flowbite.min.js"></script>

Icons (Lucide):

<script src="https://unpkg.com/lucide@latest/dist/umd/lucide.min.js"></script>
<script>lucide.createIcons();</script>

Images:

  • Use real placeholder services: Unsplash, placehold.co
  • Never make up image URLs
  • Example: https://images.unsplash.com/photo-xxx?w=800&h=600

6. Responsive Design

Always design mobile-first and responsive:

/* Mobile first */
.container { padding: 1rem; }

/* Tablet */
@media (min-width: 768px) {
  .container { padding: 2rem; }
}

/* Desktop */
@media (min-width: 1024px) {
  .container { max-width: 1200px; margin: 0 auto; }
}

7. Accessibility

  • Use semantic HTML (header, main, nav, section, article)
  • Include proper heading hierarchy (h1 → h2 → h3)
  • Add aria-labels to interactive elements
  • Ensure sufficient color contrast (4.5:1 minimum)
  • Support keyboard navigation

8. Component Design Tips

Cards:

  • Subtle shadows, not heavy drop shadows
  • Consistent padding (p-4 to p-6)
  • Hover state: slight lift + shadow increase

Buttons:

  • Clear visual hierarchy (primary, secondary, ghost)
  • Adequate touch targets (min 44x44px)
  • Loading and disabled states

Forms:

  • Clear labels above inputs
  • Visible focus states
  • Inline validation feedback
  • Adequate spacing between fields

Navigation:

  • Sticky header for long pages
  • Clear active state indication
  • Mobile-friendly hamburger menu

Quick Reference

ElementRecommendation
Primary fontInter, Outfit, DM Sans
Code fontJetBrains Mono, Fira Code
Border radius0.5rem - 1rem (modern), 0 (brutalist)
ShadowSubtle, 1-2 layers max
Spacing4px base unit (0.25rem)
Animation150-400ms, ease-out
Colorsoklch() for modern, avoid generic blue

Based on SuperDesign patterns — https://superdesign.dev

Repository
github.com/jdrhyne/agent-skills
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.