mcpField
W
web-design-reviewer

web-design-reviewer

github.com/githubデザイン・UI40.5k14.0k 回インストール今日更新
リポジトリ

web-design-reviewer について

ウェブサイトを目視でレビューし、ソースコード上でデザインの問題を修正するスキルです。ブラウザーでの検査、レスポンシブ対応とアクセシビリティの確認、対象を絞った修正、修正後の検証を案内します。

主な機能

  1. 01スクリーンショットと DOM によるページ検査
  2. 02レイアウトとレスポンシブ表示の確認
  3. 03アクセシビリティと視覚的一貫性のレビュー
  4. 04関連するソースファイルの特定
  5. 05最小限の対象修正
  6. 06変更の再確認と結果報告

活用シーン

  1. 01ローカルまたはステージングサイトのレビュー
  2. 02モバイルレイアウトの問題発見
  3. 03コントラストとキーボードフォーカスの確認
  4. 04ページスタイルの修正と検証

MCP 対応

ブラウザーのナビゲーション、スクリーンショット、DOM スナップショット、操作、画面サイズ変更、コンソール確認の参考実装として Playwright MCP を説明しています。他のブラウザー自動化ツールも互換候補に挙げています。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/github/awesome-copilot --skill web-design-reviewer

インストール後、Claude Code で/web-design-reviewerを入力して読み込まれたか確認します。

同梱ファイルreferences/framework-fixes.mdreferences/visual-checklist.md

詳細

Web デザインレビュアー

このスキルは、Web サイトのデザイン品質を視覚的に検査・検証し、ソースコードレベルで問題を特定して修正することを可能にします。

適用範囲

  • 静的サイト(HTML/CSS/JS)
  • React / Vue / Angular / Svelte などの SPA フレームワーク
  • Next.js / Nuxt / SvelteKit などのフルスタックフレームワーク
  • WordPress / Drupal などの CMS プラットフォーム
  • その他あらゆる Web アプリケーション

前提条件

必須
  1. 対象の Web サイトが実行されていること

    • ローカル開発サーバー(例: http://localhost:3000)
    • ステージング環境
    • 本番環境(読み取り専用のレビュー用)
  2. ブラウザ自動化が利用可能であること

    • スクリーンショットの取得
    • ページナビゲーション
    • DOM 情報の取得
  3. ソースコードへのアクセス(修正を行う場合)

    • プロジェクトがワークスペース内に存在すること

ワークフローの概要

flowchart TD
    A[Step 1: Information Gathering] --> B[Step 2: Visual Inspection]
    B --> C[Step 3: Issue Fixing]
    C --> D[Step 4: Re-verification]
    D --> E{Issues Remaining?}
    E -->|Yes| B
    E -->|No| F[Completion Report]

ステップ 1: 情報収集フェーズ

1.1 URL の確認

URL が提供されていない場合は、ユーザーに尋ねてください:

レビューする Web サイトの URL を提供してください(例: http://localhost:3000)

1.2 プロジェクト構造の把握

修正を行う場合は、以下の情報を収集してください:

項目質問の例
フレームワークReact / Vue / Next.js などを使用していますか?
スタイリング手法CSS / SCSS / Tailwind / CSS-in-JS など
ソースの場所スタイルファイルとコンポーネントはどこにありますか?
レビュー範囲特定のページのみ、それともサイト全体ですか?
1.3 プロジェクトの自動検出

ワークスペース内のファイルから自動検出を試みます:

Detection targets:
├── package.json     → Framework and dependencies
├── tsconfig.json    → TypeScript usage
├── tailwind.config  → Tailwind CSS
├── next.config      → Next.js
├── vite.config      → Vite
├── nuxt.config      → Nuxt
└── src/ or app/     → Source directory
1.4 スタイリング手法の特定
手法検出方法編集対象
純粋な CSS*.css ファイルグローバル CSS またはコンポーネント CSS
SCSS/Sass*.scss、*.sassSCSS ファイル
CSS Modules*.module.cssモジュール CSS ファイル
Tailwind CSStailwind.config.*コンポーネント内の className
styled-componentsコード内の styled.JS/TS ファイル
Emotion@emotion/ インポートJS/TS ファイル
CSS-in-JS(その他)インラインスタイルJS/TS ファイル

ステップ 2: 視覚的検査フェーズ

2.1 ページの巡回
  1. 指定された URL に移動します
  2. スクリーンショットを取得します
  3. DOM 構造/スナップショットを取得します(可能な場合)
  4. 追加のページが存在する場合は、ナビゲーションを通じて巡回します
2.2 検査項目

検査中および修正後の検証時に再度、references/visual-checklist.md に沿って作業を進めてください。

レイアウトの問題
問題説明重要度
要素のはみ出しコンテンツが親要素またはビューポートからはみ出している高
要素の重なり意図しない要素の重なり高
配置の問題グリッドまたはフレックスの配置問題中
一貫性のない余白パディング/マージンの不整合中
テキストの見切れ長いテキストが適切に処理されていない中
レスポンシブの問題
問題説明重要度
モバイル非対応小さな画面でレイアウトが崩れる高
ブレークポイントの問題画面サイズ変更時の不自然な遷移中
タッチターゲットモバイルでボタンが小さすぎる中
アクセシビリティの問題
問題説明重要度
コントラスト不足テキストと背景のコントラスト比が低い高
フォーカス状態なしキーボードナビゲーション時に状態を判別できない高
alt テキストの欠如画像の代替テキストがない中
視覚的一貫性
問題説明重要度
フォントの不整合フォントファミリーの混在中
色の不整合ブランドカラーの不統一中
余白の不整合類似要素間の不均一な余白低
2.3 ビューポートテスト (レスポンシブ)

以下のビューポートでテストします。

名前幅代表的なデバイス
モバイル375pxiPhone SE/12 mini
タブレット768pxiPad
デスクトップ1280px標準的な PC
ワイド1920px大型ディスプレイ

ステップ 3: 問題修正フェーズ

3.1 問題の優先順位付け
block-beta
    columns 1
    block:priority["Priority Matrix"]
        P1["P1: Fix Immediately\n(Layout issues affecting functionality)"]
        P2["P2: Fix Next\n(Visual issues degrading UX)"]
        P3["P3: Fix If Possible\n(Minor visual inconsistencies)"]
    end
3.2 ソースファイルの特定

問題のある要素からソースファイルを特定します。

  1. セレクタベースの検索

    • クラス名または ID でコードベースを検索
    • grep_search でスタイル定義を調査
  2. コンポーネントベースの検索

    • 要素のテキストまたは構造からコンポーネントを特定
    • semantic_search で関連ファイルを調査
  3. ファイルパターンのフィルタリング

    Style files: src/**/*.css, styles/**/*
    Components: src/components/**/*
    Pages: src/pages/**, app/**
    
3.3 修正の適用
フレームワーク固有の修正ガイドライン

詳細は references/framework-fixes.md を参照してください。

修正の原則
  1. 最小限の変更: 問題を解決するために必要な最小限の変更のみを行います
  2. 既存のパターンを尊重: プロジェクトの既存のコードスタイルに従います
  3. 破壊的変更を避ける: 他の領域に影響を与えないよう注意します
  4. コメントの追加: 必要に応じて修正の理由を説明するコメントを追加します

ステップ 4: 再検証フェーズ

4.1 修正後の確認
  1. ブラウザをリロードします (または開発サーバーの HMR を待ちます)
  2. 修正された領域のスクリーンショットを撮影します
  3. 修正前と修正後を比較します
4.2 リグレッションテスト
  • 修正が他の領域に影響を与えていないことを確認します
  • レスポンシブ表示が壊れていないことを確認します
4.3 反復の判断
flowchart TD
    A{Issues Remaining?}
    A -->|Yes| B[Return to Step 2]
    A -->|No| C[Proceed to Completion Report]

反復の上限: 特定の問題に対して 3 回を超える修正の試行が必要な場合は、ユーザーに相談してください


出力形式

レビュー結果レポート
# Web Design Review Results

## Summary

| Item | Value |
|------|-------|
| Target URL | {URL} |
| Framework | {Detected framework} |
| Styling | {CSS / Tailwind / etc.} |
| Tested Viewports | Desktop, Mobile |
| Issues Detected | {N} |
| Issues Fixed | {M} |

## Detected Issues

### [P1] {Issue Title}

- **Page**: {Page path}
- **Element**: {Selector or description}
- **Issue**: {Detailed description of the issue}
- **Fixed File**: `{File path}`
- **Fix Details**: {Description of changes}
- **Screenshot**: Before/After

### [P2] {Issue Title}
...

## Unfixed Issues (if any)

### {Issue Title}
- **Reason**: {Why it was not fixed/could not be fixed}
- **Recommended Action**: {Recommendations for user}

## Recommendations

- {Suggestions for future improvements}

必要な機能

機能説明必須
Web ページのナビゲーションURL へのアクセス、ページ遷移✅
スクリーンショットのキャプチャページ画像のキャプチャ✅
画像解析視覚的な問題の検出✅
DOM の取得ページ構造の取得推奨
ファイルの読み書きソースコードの読み取りと編集修正に必須
コード検索プロジェクト内のコード検索修正に必須

リファレンス実装

Playwright MCP による実装

このスキルのリファレンス実装として Playwright MCP を推奨します。

機能Playwright MCP ツール目的
ナビゲーションbrowser_navigateURL へのアクセス
スナップショットbrowser_snapshotDOM 構造の取得
スクリーンショットbrowser_take_screenshot視覚的な検査用の画像
クリックbrowser_clickインタラクティブな要素の操作
リサイズbrowser_resizeレスポンシブテスト
コンソールbrowser_console_messagesJS エラーの検出
設定例 (MCP サーバー)
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["-y", "@playwright/mcp@latest", "--caps=vision"]
    }
  }
}
その他の互換性のあるブラウザ自動化ツール
ツール特徴
Selenium幅広いブラウザサポート、多言語サポート
PuppeteerChrome/Chromium に特化、Node.js
CypressE2E テストとの容易な統合
WebDriver BiDi標準化された次世代プロトコル

これらのツールでも同じワークフローを実装できます。必要な機能 (ナビゲーション、スクリーンショット、DOM 取得) を提供していれば、ツールの選択は柔軟です。


ベストプラクティス

DO (推奨)
  • ✅ 修正を行う前に必ずスクリーンショットを保存する
  • ✅ 一度に 1 つの問題を修正し、それぞれを検証する
  • ✅ プロジェクトの既存のコードスタイルに従う
  • ✅ 大きな変更の前にはユーザーに確認する
  • ✅ 修正の詳細を徹底的に記録する
DON'T (非推奨)
  • ❌ 確認なしの大規模なリファクタリング
  • ❌ デザインシステムやブランドガイドラインの無視
  • ❌ パフォーマンスを無視した修正
  • ❌ 複数の問題を一度に修正すること (検証が困難)

トラブルシューティング

問題: スタイルファイルが見つからない
  1. package.json の依存関係を確認する
  2. CSS-in-JS の可能性を検討する
  3. ビルド時に生成される CSS を検討する
  4. ユーザーにスタイリング手法について質問する
問題: 修正が反映されない
  1. 開発サーバーの HMR が機能しているか確認する
  2. ブラウザのキャッシュをクリアする
  3. プロジェクトがビルドを必要とする場合は再ビルドする
  4. CSS の詳細度の問題を確認する
問題: 修正が他の領域に影響を与えている
  1. 変更をロールバックする
  2. より詳細なセレクターを使用する
  3. CSS Modules またはスコープ付きスタイルの使用を検討する
  4. ユーザーに影響範囲を確認する

コメント