Claude-skill-registry ios-ux-audit
iPhoneユーザー向けのUX監査を実行し、問題点と改善案をレポートする。「UX監査して」「iOS UXチェック」「画面を監査」などのリクエストで使用する。
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/ios-ux-audit" ~/.claude/skills/majiayu000-claude-skill-registry-ios-ux-audit && rm -rf "$T"
manifest:
skills/data/ios-ux-audit/SKILL.mdsource content
iOS UX 監査スキル
指定された画面(または全画面)を走査し、iPhoneユーザーのUX品質を監査する。
デザイン前提: Liquid Glass
本プロジェクトは Apple iOS 26 の Liquid Glass デザインを前提とする。 監査時は
@callstack/liquid-glass (LiquidGlassView, LiquidGlassContainerView) の使用状況も確認する。
監査対象
対象ファイル:
— 画面コンポーネントsrc/screens/**/*.tsx
— UIコンポーネントsrc/components/**/*.tsx
— ナビゲーション構造src/App.tsx
引数が指定された場合はその画面のみ、省略時は全画面を対象とする。
監査チェックリスト
以下の7カテゴリを順にチェックし、問題があれば具体的なファイル名・行番号と改善案を報告する。
1. Safe Area & デバイス対応
-
がルートで使用されているかSafeAreaView - ノッチ / Dynamic Island 領域に要素が被っていないか
- ホームインジケータ領域(画面下部)にボタン等が被っていないか
-
で動的にパディングを取得しているかuseSafeAreaInsets() - ステータスバーのスタイル(
/light
)が背景色と適切かdark
2. キーボード処理
-
を含む画面にTextInput
があるか(iOS:KeyboardAvoidingView
)behavior="padding" -
にScrollView
が設定されているかkeyboardShouldPersistTaps="handled" -
が適切に設定されているか(returnKeyType
,done
,next
等)search - キーボードを閉じる手段があるか(
等)Keyboard.dismiss()
3. ハプティクス
- ボタンのプレスに触覚フィードバックがあるか
- 破壊的アクション(削除等)に
があるかnotificationAsync(Warning) - タブ切り替え・トグルに
があるかselectionAsync() - 成功・完了時に
があるかnotificationAsync(Success)
4. アクセシビリティ
- すべての
/Pressable
にTouchableOpacity
があるかaccessibilityLabel - アイコンのみのボタンに
があるかaccessibilityLabel - 画像に
またはaccessibilityLabel
(装飾的)があるかaccessible={false} -
が適切に設定されているか(accessibilityRole
,button
,link
等)header - 絵文字アイコンがアクセシビリティラベルで補完されているか
5. パフォーマンス
- リスト表示に
/FlatList
を使っているか(SectionList
ではなく).map() - 画像に適切な
と遅延読み込みがあるかresizeMode - 不要な再レンダリングを防ぐ
/React.memo
/useMemo
があるかuseCallback -
prop に配列のインデックスではなく一意のIDを使っているかkey
6. iOS HIG 準拠
- 絵文字ではなくアイコンライブラリ(
等)を使っているか@expo/vector-icons - 戻るボタンがiOS標準のシェブロン(
)スタイルか< - モーダル/シート表示が適切か(設定画面等)
- タッチターゲットが最低44x44ptあるか
- フォントサイズがiOSの推奨範囲内か(本文: 17pt, キャプション: 12pt以上)
7. Liquid Glass デザイン準拠
- カード・ツールバー・モーダルに
が適用されているかLiquidGlassView - 近接するガラス要素が
でグループ化されているかLiquidGlassContainerView -
プロパティが適切か(カード:effect
, オーバーレイ:regular
)clear - ガラス背景上のテキストが十分なコントラストを持つか(WCAG AA以上)
-
で非対応デバイスにフォールバックがあるかisLiquidGlassSupported - フォールバック時に半透明背景色(例:
)が設定されているかrgba(255,255,255,0.8) - 全画面ガラス背景を避け、アクセント的に使用しているか
- ガラス要素に
が設定されているかborderRadius - 「透明度を下げる」設定 (
) を尊重しているかAccessibilityInfo - ガラス要素の高さが65px超の場合、テキストに
を使用しているかPlatformColor('labelColor')
8. ジェスチャー & インタラクション
- スワイプバック(←方向)でナビゲーション戻りができるか
- リストにプルトゥリフレッシュ (
) があるかRefreshControl - ロングプレスでコンテキストメニューが出るか(必要な箇所)
- ボタンにプレス状態のフィードバック(opacity/scale)があるか
出力フォーマット
## iOS UX 監査レポート ### 対象: [画面名 or 全画面] #### 🔴 Critical(即座に修正すべき) - **[カテゴリ]** `ファイル名:行番号` — 問題の説明 → 改善案: ... #### 🟡 Warning(改善推奨) - **[カテゴリ]** `ファイル名:行番号` — 問題の説明 → 改善案: ... #### 🟢 Good(問題なし) - [カテゴリ]: ✓ 適切に実装済み #### 📊 スコア: X / 8 カテゴリ合格
ルール
- コードの変更は行わない。監査とレポートのみ
- 問題箇所は必ずファイルパスと行番号を含める
- 改善案は具体的なコード例を含める
- プロジェクトの
のデザイントークンを考慮するsrc/theme/tokens.ts - 既存の依存パッケージで対応可能な改善を優先する