product-design
Skill1 starsChanged 3 months agoMITView on GitHub
Routing hub for product UI/UX craft — density, hierarchy, mobile chrome, design-system fidelity, interaction quality, explore-before-build, and product chart judgment. Use when polishing app surfaces (card, chat, trade, filters, HUDs), sticky/mobile UX, empty/loading/error states, "works but feels off", motion/micro-interaction review, or when the right craft skill is unclear. Routes to product-ui-craft, mobile-product-ux, design-system, web-quality, ui-explore, mockup-implement, tufte, emil-design-eng, make-interfaces-feel-better, 12-principles-of-animation, flutter-pro-ux-review (Flutter apps), then browser-verify. Prefer frontend-design for full FE implementation pipelines (perf, SPA structure) when the ask is build-the-feature not craft. Do not use for marketing landings (marketing), pure QA/e2e (quality-check), or data pipelines (data).
26 other projects use a version of this.
Adopted by
Most recently taken up by
- lklimek/claudiustheir own version, first seen Nov 8, 2026
- thensls/nsls-builder-toolkittheir own version, first seen Nov 8, 2026
- fracazo/design-systemtheir own version, first seen Nov 8, 2026
- lobehub/lobehubtheir own version, first seen Nov 5, 2026
- Cure-Consulting-Group/ProductEngineeringSkillstheir own version, first seen Nov 4, 2026
- MasihMoafi/skillstheir own version, first seen Nov 3, 2026
Used with
Projects with it also use ux-audit and i18n.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
shmehroSkillux-audit
Perform a heuristic UX audit on a UI screen, flow, or component description
Also in 3 projects that use this
lbednerSkilli18n
Use when a code or template change introduces a new translation message key, in either the framework CLI (aegis/i18n/locales/) or a generated project's CLI (the app/i18n/locales/ template tree). Covers adding the real English string, stubbing the same key into every other locale for parity, and the separate translation PR that later replaces placeholders with reviewed native text.
Also in 3 projects that use this
Other versions26 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 26
- lobehub/lobe-chat★ 84ksame name
- lobehub/lobehub★ 84ksame name
- alekspetrov/navigator★ 355same name
- qf-studio/navigator★ 355same name
- duyet/clickhouse-monitoring★ 303same name
- github/replica★ 230same name
- mblode/agent-skills★ 189same name
- chuhaiqu/skills★ 22same name
- vercel-labs/arcade★ 21same name
- yoyothesheep/claude-skills★ 16same name
16 more not listed
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.
In this repository47 other files it gives its agents.
- data-apache-lakehouseSkill
- data-apiSkill
- dataSkill
- data-duckdbSkill
- data-identity-resolutionSkill
- data-pipeline-operationsSkill
- data-pokemon-tcg-foundationsSkill
- data-product-evalSkill
- data-reelsSkill
- data-semantic-qualitySkill
- data-table-lifecycleSkill
- html-designSkill
- ebay-listingSkill
- flutter-pro-ux-reviewSkill
- flutterSkill
- browser-testing-with-devtoolsSkill
- browser-verifySkill
- design-systemSkill
- frontend-designSkill
- mobile-app-echarts-visualSkill
- mobile-blog-chart-visualSkill
- mobile-chart-visualSkill
- mobile-product-uxSkill
- mockup-implementSkill
- product-ui-craftSkill
- prototypeSkill
- react-performanceSkill
- ui-exploreSkill
- visual-verifySkill
- web-qualitySkill
- high-retention-insight-reels-instagramSkill
- instagramSkill
- instagram-virality-insightsSkill
- marketing-cashvertisingSkill
- marketing-contagiousSkill
- marketing-going-viralSkill
- marketingSkill
- marketing-offersSkill
- marketing-storybrandSkill
- quality-checkSkill
- elements-of-styleSkill
- style-clarity-graceSkill
- writer-styleSkill
- writing-docsSkill
- writing-proseSkill
- writingSkill
- writing-technicalSkill
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 7 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 21 edited versions we read keep these.
7
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 93
ui-explore: if the look is still open (principle 9: live data, all shipped surfaces)
- Distinctive: line 97
tufte: if product charts
- Distinctive: line 118
If the user says “build the page” → frontend-design.
- Distinctive: line 119
If they say “make the trade HUD feel right on mobile” → this hub.
- Distinctive: line 120
If they say “prove sticky doesn’t break” → quality-check / browser-verify.
- Distinctive: line 176
If web, mobile-web, and native ship the same product surface, they share one data contract (same fields, same empty/error meaning).
- Distinctive: line 204
Do not install competing aesthetic mega-skills (“UI/UX Pro Max” style) alongside this hub — they fight your design system.
“Common” is measured: kept by at least 6 in 10 of the 21 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
Product design — UI/UX routing hub
Craft and product judgment first. This hub is for how product surfaces feel and behave — not marketing heroes, not backend, not “prove CI green.”
Route first → open one specialist → do the work. Load at most 1–3 specialists.
product-design (this hub)
→ design-system | product-ui-craft | mobile-product-ux | web-quality
→ ui-explore | mockup-implement | tufte
→ emil-design-eng | make-interfaces-feel-better | 12-principles-of-animation (motion/feel review)
→ flutter-pro-ux-review (Flutter app production polish audit)
→ quality-check / browser-verify (prove pixels)When to use this hub
| Signal | Example |
| Polish / craft | “Spacing is off”, “feels cheap”, density, hierarchy |
| Mobile product chrome | Sticky bars, sheets, safe areas, one-thumb |
| Product states | Empty, loading, error, selected — missing or awkward |
| System fidelity | Wrong tokens, inventing fonts/colors, off-brand |
| Interaction UX | Focus traps, form friction, touch targets (not full e2e suite) |
| Explore options | A/B product chrome before committing production |
| Product charts | KPI tiles, series charts that must stay honest (tufte) |
| Motion / feel review | "Animation feels janky", micro-interaction polish, "works but feels off" on transitions |
Primary ownership (vs frontend-design)
These specialists belong here first (product UX). frontend-design only pulls them in as steps inside a full implement pipeline:
| Primary under product-design | Why |
| design-system | Product visual law |
| product-ui-craft | Density / hierarchy craft |
| mobile-product-ux | Mobile product chrome |
| web-quality | Interaction UX / a11y craft |
| ui-explore | Explore before build |
| mockup-implement | Fidelity after sign-off (craft path) |
| tufte | Product chart judgment |
frontend-design owns primarily: react-performance, SPA/feature structure, “build the page” orchestration.
Routing table
| Your task | Skill | Load when |
| Tokens, components, brand locks, DESIGN.md | design-system | Project law; agents inventing aesthetics |
| Spacing, type hierarchy, density, radii, motion restraint | product-ui-craft | Desktop/app chrome polish |
| Sticky bars, bottom sheets, safe areas, gestures | mobile-product-ux | Phone/tablet product surfaces |
| A11y, focus, forms, touch targets, motion prefs | web-quality | Interaction/a11y craft (not full ship QA) |
| HTML A/B or throwaway UI/logic prototypes | ui-explore | Design not signed off yet |
| Port signed-off mockup with fidelity | mockup-implement | Winner chosen; match don’t freestyle |
| Quantitative charts / dashboards | tufte | Viz craft (+ design-system chart tokens) |
| Blog SVG chart text/spacing / clip / density | mobile-blog-chart-visual | Phone floors + plot share; no subtitles under title (install from this pack) |
| Product ECharts (card/portfolio) mobile clip / tiny axes | mobile-app-echarts-visual | grid/axisLabel floors, adaptive height, dual viewport |
| UI polish, component craft, perceived performance | emil-design-eng | Optional install — Emil Kowalski design-engineering pass on invisible details |
| Micro-interaction / "feels better" review | make-interfaces-feel-better | Optional install — Jakub Krehel detail checklist (radius, optical align, shadows) |
| Animation audit vs. 12 principles | 12-principles-of-animation | Optional install — Disney's 12 principles adapted for web, file:line findings |
| Flutter production UX polish (dead taps, null, haptics, keyboard, motion) | flutter-pro-ux-review | Flutter/pubspec.yaml apps — complements official Flutter architecture skills |
| Prove sticky/viewport/a11y in browser | browser-verify | After craft — or quality-check for full QA path |
| Multi-surface lab (web + mobile-web + native) on live backend data | this hub (principle 9) then ui-explore | Do not rewrite prod chrome |
| Full feature build (perf, SPA, implement pipeline) | frontend-design | Broader FE engineering hub |
| Unclear multi-step craft | start here | Default for product UX |
Multi-step craft pipeline
- design-system — lock tokens / kit / bans
- ui-explore if the look is still open (principle 9: live data, all shipped surfaces)
- mockup-implement once signed off
- product-ui-craft (+ mobile-product-ux if touch/sticky)
- web-quality for forms/focus/targets
- tufte if product charts
- emil-design-eng / make-interfaces-feel-better / 12-principles-of-animation if motion/feel is the specific complaint (optional installs)
- browser-verify or quality-check before claiming done
explore (ui-explore)
→ mockup-implement
→ product-ui-craft (+ mobile-product-ux)
→ web-quality
→ emil-design-eng / make-interfaces-feel-better / 12-principles-of-animation (motion/feel)
→ browser-verify / quality-checkproduct-design vs frontend-design vs quality-check
| Hub | Job |
| product-design (this) | Product UX craft, mobile chrome, density, system fidelity, explore |
| frontend-design | Full FE implement path (also routes to craft specialists + react-performance) |
| quality-check | Prove / regression / TDD / ship — not invent craft |
If the user says “build the page” → frontend-design.
If they say “make the trade HUD feel right on mobile” → this hub.
If they say “prove sticky doesn’t break” → quality-check / browser-verify.
Shared product UX principles
Each has a falsifiable Test:.
1. Project design system beats generic “pretty”
DESIGN.md, tokens, kit components win over neo-brutalism packs and random Inter/purple defaults.
Test: Would a design-system owner accept this without a rebrand fight?
2. Product surfaces optimize for scan, density, trust
Tables, chat, trade HUDs, filters ≠ marketing heroes. Prefer clear hierarchy and restrained motion.
Test: Can a user find the primary action and current state in under 2 seconds?
3. States are part of the design
Loading, empty, error, success, disabled, selected — not “polish later.”
Test: Is every async path designed, or only the happy path?
4. Mobile is a first viewport
Sticky, sheets, safe areas, and thumb reach are designed — not shrunk desktop.
Test: Does 390-class width need a special layout, or did we only check desktop?
5. Touch and focus are product quality
Targets, focus rings, form labels, motion prefs — web-quality. Automated axe alone is not craft.
Test: Keyboard-only and thumb-only paths both complete the primary job?
6. Charts carry product truth
Quantitative UI uses tufte (honest encoding) + design-system chart shells — not decorative sparklines that lie.
Test: Does the chart answer a product question without chartjunk?
7. Explore before freestyle production
Unsigned visuals → ui-explore. Signed → mockup-implement. Don’t invent production chrome mid-port.
Test: Is there a named source design, or are we improvising?
8. Prove the craft in a browser when pixels matter
Sticky, overflow, gesture, density → browser-verify (or quality-check for full QA).
Test: Have you opened the real viewport, or only reasoned about CSS?
9. Three surfaces, one contract, live data
If web, mobile-web, and native ship the same product surface, they share one data contract (same fields, same empty/error meaning). Explore on live backend data — or a recorded snapshot of it — not empty fixtures that hide density. ui-explore is throwaway; do not rewrite production chrome to “try a look.”
Test: would a reviewer see real row density and the same number on every shipped surface? If one surface is a fixture and another is live, the lab is lying.
Sources (attribution)
Full pack table: ATTRIBUTION.md.
| Specialist | Lineage (summary) |
| product-ui-craft | Impeccable / make-interfaces-feel-better craft principles — original synthesis |
| mobile-product-ux | iOS HIG / Material density practice — original synthesis |
| design-system | Project DESIGN.md law; Anthropic constraint-before-code idea |
| web-quality | Vercel Web Interface Guidelines + WCAG practical AA |
| ui-explore | Unreasonable effectiveness of HTML + throwaway prototype branches |
| mockup-implement | Design-to-code fidelity lineage |
| tufte | Edward Tufte — optional install; we route only |
| emil-design-eng | Emil Kowalski / animations.dev design-engineering — optional install; we route only |
| make-interfaces-feel-better | Jakub Krehel / interfaces.dev — optional install; we route only (condensed lineage already folded into product-ui-craft above) |
| 12-principles-of-animation | Raphael Salaja — Disney's 12 principles adapted for web — optional install; we route only |
| flutter-pro-ux-review | Multi-expert Flutter polish synthesis (Kamran-style micro-details + Bizzotto completeness + motion voices) — bundled under skills/flutter/ |
| browser-verify | Playwright + condensed Addy Osmani DevTools MCP lineage |
Do not install competing aesthetic mega-skills (“UI/UX Pro Max” style) alongside this hub — they fight your design system. Prefer design-system + craft.
Anti-patterns
- Marketing landing maximalism on data/product chrome
- Inventing fonts/colors when a design system exists
- Desktop-only for mobile-critical product flows
- Happy-path-only UI (no empty/error)
- “Looks fine in my head” without viewport proof
- Rewriting production chrome during an explore pass
- Exploring a data surface on empty fixtures while prod is dense
- Using quality-check when you still need craft decisions
- Using this hub for pure React perf / code-split (frontend-design → react-performance)
When not to use this hub
| Task | Use instead |
| Full FE feature implement + perf | frontend-design |
| TDD / e2e / regression / ship checklist | quality-check |
| Offers, ads, viral, landing narrative | marketing |
| Lakehouse / DuckDB / pipelines | data |
| No UI | — |
Done criteria
- Routed to the right craft specialist(s)
- Design-system constraints respected
- Loading/empty/error considered for new async UI
- Mobile considered if the surface is touch-reachable
- Charts used tufte when quantitative
- Browser proof when sticky/gesture/density risk is non-trivial
- Multi-surface: same contract; explore used live (or recorded-live) data
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.

