Skip to content
Back to skills

Frontend Design

ASecurity

Create distinctive, production-grade visual interfaces — design principles that apply to ANY frontend (React, Next.js, Vue, Svelte, plain HTML/CSS, React Native). Use when the aesthetic direction matters — building a component, page, landing site, or app where it must look intentional, not generic "AI slop". Covers visual hierarchy, spacing/rhythm, typography, color + contrast, layout, and design tokens — independent of framework. Triggers — "make this look good", "design", "UI", "landing pag...

  • 6 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 4, 2026
developmentpythongoreactvuenextjsawsapifrontendperformance

Works with

  • api

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 4, 2026

npx -y skills add kouroshez/coding-os --skill frontend-design --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Frontend Design?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Frontend Design
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kouroshez-frontend-design/badge)](https://www.skillsdirectory.com/skills/kouroshez-frontend-design)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: frontend-design
tier: quality
domain: [frontend]
description: Create distinctive, production-grade visual interfaces — design principles that apply to ANY frontend (React, Next.js, Vue, Svelte, plain HTML/CSS, React Native). Use when the aesthetic direction matters — building a component, page, landing site, or app where it must look intentional, not generic "AI slop". Covers visual hierarchy, spacing/rhythm, typography, color + contrast, layout, and design tokens — independent of framework. Triggers — "make this look good", "design", "UI", "landing page", "the spacing feels off", "color palette", "it looks generic/AI". Pairs with frontend-fundamentals (implementation patterns), a11y (accessibility — aesthetic without it is a lawsuit), state-management.
globs: ""
paths: []
last_reviewed: "2026-06-04"
---

# Frontend Design

Good design looks *intentional* — every spacing value, type size, and color is a decision, not a default. This skill is the aesthetic direction, and it is **framework-independent**: the same principles apply whether you write React, Vue, Svelte, React Native, or hand-written HTML/CSS. The implementation patterns are owned by [frontend-fundamentals](../frontend-fundamentals/SKILL.md); accessibility by [a11y](../a11y/SKILL.md) — load all three for real UI work (aesthetic without a11y is a lawsuit; aesthetic without patterns is tech debt).

> Check a color pair against WCAG contrast (design + a11y in one):
> `python3 scripts/check_contrast.py "#1a1a1a" "#ffffff"`

## Avoid "AI slop" — the generic look

The default generic interface: even gray borders everywhere, centered everything,
one font weight, purple-to-blue gradients, emoji as iconography, no hierarchy. It
reads as "no decisions were made". Distinctive design makes deliberate choices: a
real type scale, intentional asymmetry, a restrained palette with one accent,
generous or deliberately tight spacing — consistently applied.

## The principles (framework-agnostic)

1. **Hierarchy** — the eye should land on the most important thing first. Achieve
   it with size, weight, color, and space — not by making everything bold.
2. **Spacing rhythm** — use a scale (4/8px base: 4, 8, 12, 16, 24, 32, 48, 64),
   never arbitrary values. Consistent spacing is most of what "looks polished" is.
3. **Typography** — a type scale (not 14 random sizes); limited weights; line-height
   ~1.5 for body, tighter for headings; measure (line length) ~45–75 characters.
4. **Color** — a small palette: a neutral ramp + one or two accents. Define
   semantic roles (surface, text, primary, danger), not raw hex scattered in code.
   Every text/background pair must pass contrast — `check_contrast.py`.
5. **Layout** — align to a grid; respect proximity (related things close, unrelated
   apart); use whitespace as a tool, not filler.

Full treatment → [references/design-principles.md](references/design-principles.md).

## Design tokens — one source of truth

```
// tokens (CSS vars / a theme object) — the SSOT for the look
--space-1: 4px; --space-2: 8px; ... --radius: 8px;
--color-surface: #fff; --color-text: #1a1a1a; --color-primary: #2563eb;
```

Define spacing, color, radius, type as **tokens**, reference them everywhere —
never hardcode `margin: 13px` or `#3b82f6` inline. Tokens make the design
consistent and themeable (dark mode = swap the token values). This is the
api-contract-discipline principle applied to visual values.

## Responsive + state, by default

Design mobile-first and scale up; test the real breakpoints, not just a desktop
width. Every interactive element needs its full state set: default, hover, focus
(visible — a11y), active, disabled, loading, and the empty/error data states.
A design that only shows the happy, populated, desktop view is half-designed.

## Anti-patterns (reject on sight)

- Arbitrary spacing (`margin: 13px`, `gap: 7px`) instead of a scale.
- Raw hex/px scattered in components instead of tokens.
- One font size/weight for everything → no hierarchy.
- Centered everything, gray borders, generic gradient → AI slop.
- Color pairs that fail contrast (looks fine to you, invisible to many).
- Missing focus styles (removed `outline` with no replacement) → inaccessible.
- Only the happy/populated/desktop state designed.

## See also

- [references/design-principles.md](references/design-principles.md) — hierarchy, spacing, type, color, layout in depth.
- [assets/design-checklist.md](assets/design-checklist.md) — the review gate.
- [frontend-fundamentals](../frontend-fundamentals/SKILL.md) — implementation patterns · [a11y](../a11y/SKILL.md) — accessibility · [performance](../performance/SKILL.md).

Files in this skill

  • SKILL.md4.6 KB
  • assets/design-checklist.md1.3 KB
  • references/design-principles.md3 KB
  • scripts/check_contrast.py3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.