--- name: ui-ux-pro-max description: "UI/UX design intelligence. Plan, build, design, implement, review, improve UI/UX code. Styles: glassmorphism, minimalism, dark mode, responsive. Projects: landing page, dashboard, SaaS, mobile app." --- # UI/UX Pro Max UI/UXデザインおよび実装の専門スキル。 ## 対応領域 - ランディングページ設計 - ダッシュボードUI - SaaSプロダクト - モバイルアプリ(レスポンシブ) --- ## CRITICAL: アクセシビリティ優先 **このセクションは最優先事項。デザインの美しさよりもアクセシビリティを優先する。** ### WCAG 2.1 コントラスト要件 | テキストサイズ | 最小コントラスト比 | |---------------|-------------------| | 通常テキスト (< 18px) | **4.5:1** | | 大きいテキスト (≥ 18px bold / ≥ 24px) | **3:1** | | UI コンポーネント・アイコン | **3:1** | ### 必須: プロジェクトの globals.css を使用 **Tailwind のデフォルト色を直接使わない。** プロジェクトの `globals.css` で定義されたトークンを優先する。 ```tsx // NG: Tailwind デフォルトをそのまま使用
...
...
// OK: プロジェクトトークンを使用...
...
``` 実装前に必ず `app/globals.css` を確認し、定義済みトークンを把握すること。 ### Glassmorphism とアクセシビリティの両立 **警告: 半透明背景はコントラスト計算を複雑にする** | 背景タイプ | 問題 | 対策 | |-----------|------|------| | `bg-white/5` | 実効背景色が不確定 | テキストは `text-white` or 十分明るい色を使用 | | `bg-black/45` オーバーレイ | 下層と混ざる | 重要テキストは `text-white` を使用 | | 半透明セクション | 背景画像と混ざる | muted text は避け、白系を使用 | **安全な組み合わせ:** ```tsx // Glass card 内のテキスト説明文
{/* OK: 80%白は十分 */}説明文
{/* NG: コントラスト不足の可能性 */}Description with sufficient contrast
本文(プロジェクトトークン使用)
補足 // Glass card 内での使用説明文
``` --- ## アイコン - **使用ライブラリ**: Lucide Icons - **禁止**: 絵文字をアイコンとして使用しない ```tsx import { Music, Brain, Sparkles, Check, X } from 'lucide-react'; ``` --- ## レスポンシブブレークポイント ```css /* Mobile first */ /* sm: 640px */ /* md: 768px */ /* lg: 1024px */ /* xl: 1280px */ /* 2xl: 1536px */ ``` 検証すべき画面幅: - 320px (最小モバイル) - 768px (タブレット) - 1024px (デスクトップ) - 1440px (大画面) --- ## Pre-Delivery Checklist - [ ] **Lighthouse アクセシビリティ 100%**(最重要) - [ ] プロジェクトの globals.css トークンを使用 - [ ] Glass card 内テキストは text-white/80 以上 - [ ] バッジのコントラスト確認 - [ ] 絵文字アイコン不使用(Lucide使用) - [ ] ダークモード対応 - [ ] グラスモーフィズム適用 - [ ] cursor-pointer on clickables - [ ] レスポンシブ対応 - [ ] パフォーマンス最適化(画像、アニメーション) --- ## コントラスト確認方法 実装後は必ず Lighthouse でアクセシビリティを確認: ```bash # ローカル確認 npm run dev lighthouse http://localhost:3000 --only-categories=accessibility --view # 詳細な失敗項目の確認 lighthouse http://localhost:3000 --only-categories=accessibility --output=json | jq '.audits["color-contrast"]' ``` **目標: Lighthouse Accessibility Score 100%**