Skill

Score UI design quality and fix AI-generated tells

Scores a UI 0-100 across 7 design-coherence categories to catch the specific mixed-radii, multi-accent, emoji-icon tells of AI-generated design.

Works with githubreacttailwind

86
Spark score
out of 100
Updated 24 days ago
Version 2.6.0

Add to Favorites

Why it matters

Audit UI code files against a 74-rule design rubric to identify and eliminate the visual tells that make interfaces look AI-generated-mixed radii, multiple accent colors, emoji icons, missing states-and return a 0-100 score with a prioritized fix list.

Outcomes

What it gets done

01

Score seven design categories (coherence, color discipline, hierarchy, layout, states, UX writing, motion) with line-level evidence

02

Detect AI-generated UI tells like emoji icons, pure-black text, rainbow status colors, and inconsistent corner radii

03

Generate a prioritized fix list ordered by score gain to reach 80+ quality threshold fastest

04

Review entire directories and identify the lowest-scoring file for detailed breakdown

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/ag-styleseed-design-review | bash

Overview

StyleSeed Design Review

This skill scores a UI file or directory 0-100 across 7 design-coherence categories (coherence, color discipline, hierarchy/typography, layout/spacing, states, UX writing, motion/polish), citing line-level evidence and ordering the resulting fix list by score gain. Use it when UI looks generic or off, a design score is wanted, or right after generating UI to verify it clears a quality bar before shipping.

What it does

Reviews a UI file or directory against a concrete design rubric on the premise that UI reads as "AI-generated" not because components are ugly but because the parts don't agree with each other - mixed corner radii, three accent colors, pure-black text, no hierarchy, missing states, robotic copy. It scores seven categories against a 100-point total, starting each at full marks and deducting for evidence-cited violations: Coherence (20 pts, the number-one "AI-generated" tell) penalizes mixed corner radii, two-or-more accent colors, emoji used as UI icons (flagged specifically for injecting uncontrolled hues versus a single line-icon set in currentColor), mixed shadow languages, mixed icon families, and inconsistent control heights; Color discipline (16 pts) penalizes pure black text instead of a refined near-black (~#2A2A2A), hardcoded hex where a semantic token exists, a normal/default state shown in a status color instead of neutral grey, status color applied to most or every row instead of just the minority needing attention, decorative per-item hues, color-only status with no icon or text, and sub-WCAG-AA contrast; Hierarchy & typography (16 pts) penalizes a number-to-unit size ratio far from roughly 2:1, uniform size/weight with no clear primary element, arbitrary font sizes with no scale, and wrong line-height; Layout & spacing (12 pts) penalizes bare-background content not in cards, off-grid spacing (7/13/19px instead of an 8px scale), a group's outer gap not exceeding its inner gap, and repeated identical section types in a row; States (12 pts) penalizes missing empty/loading/error states on data surfaces and unhelpful empty/error copy; UX writing (12 pts) penalizes buttons that don't name the actual action ("Submit" instead of "Send $2,400"), blaming or system-speak error copy ("Invalid input"), and inconsistent terminology or filler words; Motion & polish (12 pts) penalizes ad-hoc fades without a consistent named motion feel, motion that delays or blocks an action, missing prefers-reduced-motion handling, and a single hard black shadow instead of a layered tinted one. Each category clamps at 0 and sums to a total, graded on fixed bands (90+ A, 80-89 B, 70-79 C, 60-69 D, under 60 F). Output is a structured score report per file - category-by-category points with line-cited evidence - followed by a fix list ordered by score gain rather than raw severity, so the highest-leverage fixes (e.g. unifying radius and collapsing to one accent for +11 points) come first, with a projected re-score. For a directory, it gives one-line scores per file plus a full breakdown for the lowest-scoring file. It never auto-edits - it measures and recommends only, applying fixes solely when asked - and is meant as a quality gate run right after generating UI, iterating the fix list until the score clears roughly 80 before the UI reaches the user; the bar is a floor to clear, not a ceiling to chase to 100.

Design Score: 72 / 100   (src/Dashboard.tsx)   C

Coherence            13/20   sharp cards (l.22) + pill buttons (l.48); 3 accent hues
Color discipline     12/16   #000 headings (l.12, 40)
States                7/12   no empty/loading state on the orders list

When to use - and when NOT to

Use it when a React/Tailwind/HTML UI looks generic, unfinished, or "off" and the reason isn't obvious, when a design score or pre-ship check is wanted, when a user asks for UI to look professional or polished rather than AI-generated, or right after generating UI to verify it before shipping.

Inputs and outputs

Input is a UI file or directory (React/Tailwind/HTML). Output is a category-by-category score out of 100 with a letter grade, line-cited evidence for each deduction, and a fix list ordered by score gain - review only, no auto-editing unless explicitly asked.

Integrations

Based on StyleSeed, an open-source (MIT) design engine with a full 74-rule reference, components, brand skins, and motion patterns beyond this condensed 7-category rubric.

Who it's for

Developers shipping AI-generated or AI-assisted UI who want an evidence-based, scored design review that catches the specific tells of incoherent design (mixed radii, multiple accents, emoji icons, missing states) before it reaches users, prioritized by fastest path to a better score.

Source README

StyleSeed Design Review

Overview

A UI reads as "AI-generated" not because the components are ugly, but because the parts
don't agree with each other
- mixed corner radii, three accent colors, pure-black text,
no hierarchy, missing states, robotic copy. This skill reviews a UI file (or a whole
directory) against a concrete design rubric, scores it 0-100, and returns a prioritized
fix list. It reviews and recommends; it never edits or deletes without you asking.

Full rule set (74 rules) and components: https://github.com/bitjaru/styleseed

When to use

  • A React / Tailwind / HTML UI "looks off," generic, or unfinished and you can't say why.
  • You want a design score / pre-ship check.
  • The user asks to make UI "look professional / polished / designed, not AI-generated."
  • After generating UI, to verify it before shipping.

How to review

Read the file(s). Score these seven categories (total 100); start each at full marks
and subtract for violations you can cite by line. Be specific and evidence-based.

1. Coherence - 20 (the #1 "AI-generated" tell)

One choice per axis, applied everywhere. Deduct for each mixed axis:

  • mixed corner radii - e.g. a sharp card with pill buttons (−6)
  • two or more accent colors used for emphasis (−5)
  • emoji used as UI icons (🚗🧺⭐ as list/nav/status/category markers) - injects many uncontrolled hues; use one line-icon set in currentColor (−6)
  • mixed shadow languages / light directions (−3)
  • mixed icon families, fill modes, or stroke weights (−3)
  • inconsistent control heights (buttons/inputs differ) (−3)

2. Color discipline - 16

  • pure black (#000 / text-black) text - the refined black is ~`#2A2A2A` (−4 each, cap −8)
  • hardcoded hex where a semantic token exists (−2 each, cap −6)
  • a normal / OK / default ("보통") state shown in a status color instead of neutral grey (−4)
  • status color on most/every row (no severity hierarchy - color should mark the minority that needs attention) (−4)
  • decorative hues - gold stars, rainbow category dots, a different color per card - instead of accent/grey (−3)
  • status conveyed by color alone, no icon/text (−4)
  • contrast below WCAG AA (4.5:1 body, 3:1 large/UI) (−6)

3. Hierarchy & typography - 16

  • number and its unit not ~2:1 (48px number / 24px unit) (−4)
  • everything the same size and weight, no clear primary (−5)
  • arbitrary font sizes; no scale (−4)
  • wrong line-height (loose on display, cramped on body) (−3)

4. Layout & spacing - 12

  • content on a bare page background, not in cards (−6)
  • off-grid spacing (7/13/19px instead of an 8px scale) (−3)
  • the gap around a group not larger than the gap inside it (−3)
  • the same section type repeated in a row (−4)

5. States - 12

  • missing empty / loading / error state on a data surface (−5 each, cap −10)
  • empty state with no next action; error that blames instead of helping (−4)

6. UX writing - 12

  • buttons that don't name the action ("Submit" / "OK" instead of "Send $2,400") (−4)
  • error copy that blames or uses system-speak ("Invalid input", "An error occurred") (−4)
  • two terms for one concept (delete vs remove); filler words ("please", "successfully") (−2)

7. Motion & polish - 12

  • ad-hoc fades instead of one consistent, named feel (−3)
  • motion that delays content or blocks an action (−4)
  • no prefers-reduced-motion handling on custom motion (−3)
  • a single hard black shadow instead of a layered, low-opacity, tinted one (−2)

Clamp each category at 0; sum to a total. Bands: 90+ A · 80-89 B · 70-79 C · 60-69 D · <60 F.

Output format

### Design Score: 72 / 100   (src/Dashboard.tsx)   C

Coherence            13/20   sharp cards (l.22) + pill buttons (l.48); 3 accent hues
Color discipline     12/16   #000 headings (l.12, 40)
Hierarchy & type     15/16   number/unit 1:1 on hero (l.18)
Layout & spacing     10/12   two identical KPI rows (l.22-31)
States                7/12   no empty/loading state on the orders list
UX writing            8/12   "Submit" button (l.55); "Invalid input" (l.61)
Motion & polish      10/12   one hard black shadow (l.22)

### Fix first (highest score gain)
1. Unify radius (pick soft 8–12px) + collapse to one accent   → +11 coherence/color
2. Add empty + loading states to the orders list              → +7  states
3. Rename "Submit" → "Send $2,400"; "Invalid input" → "Check the card number" → +6 copy

Re-score after: ~90 / 100.

Rules

  • Review from real evidence (cite line numbers); never guess.
  • Order the fix list by score gain, not severity alone - fastest path to a better number.
  • For a directory: one-line score per file, then the lowest file's full breakdown.
  • Don't auto-edit. This skill measures and recommends. Apply fixes only when asked.
  • Use it as a quality gate: review right after generating UI, apply the fix list, and
    re-review until the score clears ~80 before showing the user - no first-draft, incoherent
    UI (rainbow status lists, emoji icons, two accents, missing states) should reach them. The
    bar is a floor, not a ceiling: clear 80 and ship; don't chase 100 to delay.

Based on StyleSeed - an open-source (MIT) design engine that gives Claude Code, Cursor,
and Codex design judgment so AI-built UI stops looking generated. Full 74-rule reference,
components, brand skins, and motion: https://github.com/bitjaru/styleseed

Limitations

  • Use this skill only when the task clearly matches its upstream source and local project context.
  • Verify commands, generated code, dependencies, credentials, and external service behavior before applying changes.
  • Do not treat examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.