design-language
Skill72 starsChanged 4 months agoMITView on GitHub
Apply a named UI design language consistently and correctly across a real codebase. Use whenever a user wants to style, restyle, theme, or "make it look like" a specific aesthetic — glassmorphism, liquid glass, neumorphism, claymorphism, skeuomorphism, brutalism, neubrutalism, flat design, Material Design 3 / Material You, Fluent, bento grid, corporate memphis, Swiss, Bauhaus, memphis, art deco, minimalism, maximalism, cyberpunk, vaporwave, synthwave, Y2K, Frutiger Aero, solarpunk, ASCII/terminal, holographic, risograph, dark academia, and 180+ more. ALSO use when the user describes a vibe, mood, or era WITHOUT the exact term ("2000s nostalgia", "make it premium/futuristic", "playful but not childish", "retro terminal", "clean and trustworthy"), when restyling existing components, or when writing a design spec / handing off tokens to another coding agent (Codex, Cursor, etc.). Covers design tokens, Tailwind config, per-component rules, accessibility fixes, and a consistency audit.
7 other projects use a version of this.
Adopted by
Most recently taken up by
- crsmithdev/alephtheir own version, first seen Nov 8, 2026
- joi-fairshare/agentic-workflowtheir own version, first seen Nov 8, 2026
- nikzlabs/shipittheir own version, first seen Oct 28, 2026
- jthorare/agentic-workflowtheir own version, first seen Oct 25, 2026
- mhylle/claude-skills-collectiontheir own version, first seen Oct 9, 2026
- Xoshbin/asyartheir own version, first seen Oct 9, 2026
Other versions7 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 7
- Xoshbin/asyar★ 986same name
- mhylle/claude-skills-collection★ 20same name
- nikzlabs/shipit★ 9same name
- joi-fairshare/agentic-workflow★ 3same name
- jthorare/agentic-workflow★ 3same name
- codywilliamson/shipwright★ 0same name
- crsmithdev/aleph★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 6 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 101
When asked to write a design brief/spec for Codex, Cursor, or another agent (rather than applying it yourself), hand over the tokens …
- Distinctive: line 111
Run the consistency audit.
- Very specific: line 130
All 199 cataloged styles have a full deep-implementation spec in references/00-flagship-implementation-specs/<slug>.md — there's no …
- Distinctive: line 148
Aesthetic sits on UX: Never let the style degrade usability, contrast, focus states, touch targets, or reading order.
“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Design Language Applicator
This skill makes you exceptional at applying a named UI design language — neumorphism, glassmorphism, liquid glass, brutalism, Material 3, cyberpunk, Y2K, Bauhaus, and 180+ others — consistently and correctly across a real codebase. The goal is to take "make this brutalist" and turn it into a coherent, accessible, fully-implemented UI with zero guesswork: real tokens, every component type styled, the signature move repeated everywhere, contrast fixed.
Scope
This skill governs the visual/aesthetic system — color, type, shape, depth, motion, texture — on top of good UX. A style sits on top of solid information architecture; it does not substitute for it. Keep the layout usable, the hierarchy clear, and the accessibility intact; then apply the aesthetic.
What's in here
SKILL.md ← you are here (workflow + navigation)
scripts/
style_catalog.json ← SINGLE SOURCE OF TRUTH: 199 styles, tokens for all 199
generate_tokens.py ← style slug → CSS custom props + Tailwind fragment
contrast_check.py ← real WCAG AA/AAA math; pair or CSS-file scan
consistency_audit.py ← the "half-applied style" detector (run this last)
references/
00-flagship-implementation-specs/<slug>.md ← full deep spec, every style (199)
01..09-<family>.md ← every catalogued style, grouped by family
style-selection-decision-tree.md ← vague vibe/brief → specific style
assets/
starter-themes/<slug>.css ← drop-in token file (+ base components for top styles)
starter-themes/<slug>.tailwind.config.fragment.js
component-examples/<slug>.html ← fully-styled button/card/nav examplesEverything derives from scripts/style_catalog.json. The prose files and the
scripts read the same catalog, so don't hand-edit generated files in a way that
makes them disagree with the JSON — change the source and regenerate.
Workflow
1. Identify the target style
- User named a style (e.g. "glassmorphism", "neubrutalism", "Material You"):
resolve it to a slug.
python3 scripts/generate_tokens.py --listshows every slug and alias. Aliases resolve too ("soft UI" → neumorphism). - User described a vibe/mood/era ("2000s nostalgia", "premium and
futuristic", "playful", "retro terminal"): open
references/style-selection-decision-tree.mdand map it to a style or a short shortlist. Pin the decade for anything "retro/nostalgic" — the #1 mistake is the wrong era (Y2K vs Frutiger Aero vs vaporwave are all "2000s"). - Disambiguate confusable neighbors before building. Glassmorphism vs liquid glass vs Frutiger Aero; neubrutalism vs brutalism vs claymorphism; Material 3 vs Material 2. If the brief could mean either, ask one question (the decision tree lists the exact questions) — a wrong neighbor yields a subtly wrong UI.
2. Pull the implementation spec
- Every cataloged style (all 199): read
references/00-flagship-implementation-specs/<slug>.md. It has the full token set, Tailwind fragment, per-primitive component rules, signature move(s), accessibility corrections, do/don't, and "don't confuse with X". - Style not in the catalog at all: research it live (web search the era/origin, 3–5 defining visual traits, and one real reference example), then derive tokens with the same schema. Add it to the catalog if it'll recur.
3. Apply it consistently — token-first
This is where "looks intentional" is won or lost. In order:
- Tokens first. Generate the token layer and put it in one place:
Or copypython3 scripts/generate_tokens.py <slug> ./out # writes .css + tailwind fragmentassets/starter-themes/<slug>.cssdirectly (the top styles also ship base component classes in that file). Wire the whole UI to the tokens (var(--color-primary), not a raw hex) so there's a single source of truth. - Walk every component type. Go through the 10 primitives in the spec's component table — button (default/hover/active/disabled/focus), input, card, nav, modal, table, tooltip, badge, toggle, loading/empty. Style each so it expresses the style's signature move. Don't style the hero and leave the table looking default.
- Repeat the signature move everywhere relevant. The 1–2 moves that make the style recognizable (the hard offset shadow, the frosted blur, the neon edge glow) go on every surface that warrants them — not once decoratively.
- Run the accessibility pass. Apply the spec's style-specific corrections
(scrims for glass, color-not-just-emboss for neumorphism, reduced-motion for
glitch/cyberpunk, contrast fixes for pastel/neon). Then verify:
python3 scripts/contrast_check.py "#f8fafc" "#0f172a" # a real text/bg pair python3 scripts/contrast_check.py --css out/<slug>.css --bg "#0f172a"
4. If the target is a spec for ANOTHER coding agent
When asked to write a design brief/spec for Codex, Cursor, or another agent
(rather than applying it yourself), hand over the tokens explicitly, not just
the style name. Include: the full CSS custom-property block and the Tailwind
fragment (from generate_tokens.py), the per-primitive component rules, the
signature move with the instruction to repeat it, and the accessibility
corrections. A style name alone will produce an inconsistent result; concrete
tokens + component rules will not.
5. Final check — before you call it done
Run the consistency audit. This is the single highest-leverage step for making a styled UI look intentional instead of half-applied.
python3 scripts/consistency_audit.py <target-dir> --style <slug>
# or, if you generated/derived a token file:
python3 scripts/consistency_audit.py <target-dir> --tokens out/<slug>.cssIt flags hardcoded colors/radii/shadows/fonts that don't reference the style's
token set — the rogue #3b82f6 in a system built on var(--color-primary), the
border-radius: 5px in a 16px system. Replace each flagged value with the right
token (or, if genuinely needed, add it to the token set so the system stays the
single source of truth). If code execution isn't available in the target
environment, do the same reasoning by hand: scan for literal color/radius/shadow
values and confirm each maps to a token.
Quick reference: every style now has a deep spec
All 199 cataloged styles have a full deep-implementation spec in
references/00-flagship-implementation-specs/<slug>.md — there's no
flagship/non-flagship split left to reason about. Use the family files
(references/0X-<family>.md) and the decision tree purely for discovery
(browsing, disambiguation, vibe → slug resolution), then always pull the
deep spec for the resolved slug. Run
python3 scripts/generate_tokens.py --list for all 199 slugs and aliases, or
--flagship for just the deep-spec set.
Principles that make application good, not just present
- Token-first, always. A hardcoded value anywhere is future inconsistency.
- Consistency > intensity. The signature move applied everywhere at 70% beats it applied once at 100%.
- Accessibility is not optional. Many trendy styles fight legibility by default; the spec tells you exactly how to fix each one. Verify, don't assume.
- Respect the era/platform. A named movement or platform system has real rules — honor them rather than approximating a vibe.
- Aesthetic sits on UX. Never let the style degrade usability, contrast, focus states, touch targets, or reading order.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

