ワンクリックで
ui-design-reviewer
Validate visual design consistency, component usage, theming, and styling for React + Tailwind CSS applications.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Validate visual design consistency, component usage, theming, and styling for React + Tailwind CSS applications.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Validate Supabase schema alignment and type safety. Use when a task touches DB schema, SQL, RPCs, RLS, or generated Supabase types.
Validate user experience quality — flows, responsiveness, accessibility, mobile-native feel, and interaction patterns for React + Tailwind + Capacitor apps.
Validate analytics/chart correctness for metrics, units, aggregations, and statistical interpretation.
Validate coaching data access safety across team/org scoping, role hierarchy, and RLS-aligned query behavior.
Validate Concept2 integration reliability across auth scopes, sync/publish behavior, and data mapping.
Validate Supabase Edge Function operability across auth, secrets, retries, logging, and idempotent execution.
| name | ui-design-reviewer |
| description | Validate visual design consistency, component usage, theming, and styling for React + Tailwind CSS applications. |
Use this skill when adding or modifying UI components, pages, dialogs, forms, cards, tables, or any visible surface.
Component Library Compliance
src/components/ui/ (barrel export index.ts): Button, Card, CardHeader, Badge, Input, Select, Breadcrumb, EmptyState.<button>, <input>, or <select> when an equivalent exists.Button variants: primary, secondary, danger, ghost, coaching; sizes: sm, md, lg.Card variants: default, elevated, outlined, ghost; padding: none, sm, md, lg.Badge variants: default, success, warning, danger, info, coaching, muted.clsx (v2.1.1) + tailwind-merge (v3.4.0) — never string concatenation for conditional classes.Input/Select components with error prop — no form library; keep consistent.Theme Token & Design Variable Usage
html.light):
--color-surface-page, --color-surface-card, --color-surface-elevated, --color-surface-secondary, --color-surface-well--color-text-primary, --color-text-secondary, --color-text-muted, --color-text-faint--color-border-default, --color-border-subtle--color-accent-primary, --color-accent-primary-hover, --color-accent-primary-text, --color-accent-primary-surface--color-accent-coaching, --color-accent-coaching-hover, --color-accent-coaching-text, --color-accent-coaching-surface--color-accent-danger, --color-accent-danger-hover, --color-accent-danger-text--color-focus-ringtailwind.config.js map tokens: surface.*, content.*, border.*, accent.*, focus.bg-white, text-black, bg-gray-*, text-gray-*, border-gray-*, or Tailwind's default neutral colors. Always use token-based classes (bg-surface-card, text-content-primary, border-border, etc.).shadow-[...] values.Typography
text-content-primary, text-content-secondary, text-content-muted) — not text-black, text-white, or raw Tailwind color scales.Button & Action Patterns
variant="primary" (emerald); coaching actions use variant="coaching" (indigo); destructive actions use variant="danger".aria-label or sr-only text).Dark Mode Compatibility
html.light class.Animation & Transitions
animate-spin, animate-pulse, animate-in, fade-in, slide-in-from-top-4.transition-colors duration-150 or duration-200.Loader2 from lucide-react with animate-spin or skeleton animate-pulse.EmptyState component from src/components/ui/.Visual Hierarchy & Layout
Card with CardHeader — verify new code follows this pattern.<Toaster position="top-right" richColors />) — import toast from sonner.When invoked, review the changed files AND scan sibling components for visual inconsistency:
style={{}} usage that should be Tailwind utilities.gray-*, slate-*, zinc-*, neutral-*) instead of token classes.src/components/ui/.