check-design-parity-figma について
check-design-parity-figmaは、コードの描画仕様とFigmaノードを比較し、実装のデザイン乖離を確認するスキルです。重み付けスコア、差異、修正案を出力します。
主な機能
- 01codeSpecとFigma仕様の比較
- 02重み付けされた一致度スコア
- 03重要度別の差異表示
- 04不一致の修正案
- 05比較する仕様項目の選択
活用シーン
- 01コンポーネントとFigmaデザインの照合
- 02余白や色のずれの検出
- 03タイポグラフィとアクセシビリティの確認
- 04コードやデザイン更新後の再検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ southleft/ skills-for-figma --skill check-design-parity-figmaインストール後、Claude Code で/check-design-parity-figmaを入力して読み込まれたか確認します。
同梱ファイルreferences/parity-scoring.mdscripts/check-parity.js
詳細
check-design-parity-figma — デザインとコードの差分チェッカー
Figma ノードの実際の仕様を取得し、codeSpec(実装で実際にレンダリングされる内容)と比較します。重み付けされたパリティスコア、プロパティごとの重要度付き差異、修正案を返します。これはコード生成の逆です。get_design_context はデザインをコードに変換しますが、このスキルはコードがデザインから逸脱していないかを確認します。
デザインの読み取りはすべて use_figma 経由で行うため、あらゆる Figma プランで動作します。
スキルの適用範囲
use_figmaのルール — まず公式のfigma-useスキルを読み込んでください。これは Figma Plugin API の完全なリファレンスです。これらのスクリプトが前提とする要点は、トップレベルのawaitとreturnを使ったプレーンな JS(IIFE やfigma.closePlugin()は使わないこと。console.logは返されません)、各スクリプトの先頭で入力をconstとしてインライン化すること、色は 0~1 の範囲で指定すること、テキスト操作の前にフォントを読み込むこと、await figma.getNodeByIdAsync(...)を使うこと、そしてアトミックなエラー処理(スクリプトの実行に失敗すると何も適用されません。エラーを読み、修正して再試行してください)です。- デザインからコードを生成する場合 → ネイティブの
get_design_contextを使います。このスキルは生成ではなく検証を行います。 codeSpec.accessibilityに渡すコード側のアクセシビリティ →scan-code-accessibility-figmaを使います(--map-to-codespecはそのオブジェクトを正確に出力します)。- デザイン側の WCAG 検査 →
lint-design-figmaを使います。
ワークフロー
- codeSpec を組み立てます。 コンポーネントがレンダリングする値を集め、
codeSpecオブジェクトにまとめます(完全な構造はreferences/parity-scoring.mdを参照)。比較したいセクションだけ入力すれば十分です。対象はvisual、spacing、typography、accessibilityです。ヒント:scan-code-accessibility-figma --map-to-codespecを使うと、codeSpec.accessibilityが自動的に作成されます。 - デザインの仕様を読み取ります。
NODE_IDを設定し、scripts/check-parity.jsにcodeSpecを貼り付けます。use_figmaを使って実行します(skillNames: "check-design-parity-figma")。ノードの塗り、線、角丸、透明度、パディング/間隔、テキストのプロパティを抽出し、codeSpec と比較します。 - スコアカードを確認します。
summary.parityScoreはmax(0, 100 − (critical×15 + major×8 + minor×3 + info×1))です。discrepancies[]には、各不一致のcategory、property、severity、designValue、codeValue、suggestionが記載されます。 - どちらを修正するか判断します。 各差異には、デザイン側とコード側それぞれの内容が示されます。コードをデザインに合わせるか、意図的なコード変更に合わせてデザインを更新し(
manage-variables-figma/figma-use経由)、スコアが上がったことを確認するために再実行します。
主なルール
- Figma では色は 0~1 の範囲です。スクリプトは比較前に色を hex に変換し、両方を正規化します。
- 入力された codeSpec のセクションだけが比較対象です。 セクションを省略すると比較対象から外れるため、指定していないデータによる誤検出はありません。
- 数値の許容誤差:幅/高さは小さな誤差(約 2px)、透明度は 0.01 の許容差を使って比較するため、サブピクセルの丸めが差分として検出されることはありません。
- 重要度がスコアを左右します:色/間隔の不一致は
major(−8)、角丸/境界線の幅/透明度はminor(−3)です。重み付けの詳細は parity-scoring.md を参照してください。
コメント
Markdown 対応