mcpField
S
shopify-ui-skills

shopify-ui-skills

github.com/ihlamuryデザイン・UI102278 回インストール37 週間前に更新
リポジトリ

shopify-ui-skills について

shopify-ui-skillsは、Shopify風のインターフェースを構築するAIエージェント向けのデザイン制約です。一貫した実装のため、見た目、レイアウト、アクセシビリティ、操作方法を定めています。

主な機能

  1. 01Shopify風インターフェースの指針
  2. 02カラートークンとコントラスト要件
  3. 03タイポグラフィと間隔のルール
  4. 04レイアウトとコンポーネントの制約
  5. 05アクセシビリティと操作の指針

活用シーン

  1. 01Shopify風デザインシステムの構築
  2. 02ライトモード画面のスタイル統一
  3. 03アクセシビリティと操作要件の確認
  4. 04AIエージェントによるUI実装のガイド

インストール

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

$npx skills add https://github.com/ihlamury/design-skills --skill shopify-ui-skills

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

同梱ファイルmetadata.json

詳細

Shopify UI スキル

AI エージェントで Shopify スタイルのインターフェイスを構築するための、独自の制約です。

適用するタイミング

以下の場合に、これらのガイドラインを参照してください。

  • ライトモードのインターフェイスを構築するとき
  • Shopify に着想を得たデザインシステムを作成するとき
  • Inter フォントと 4px グリッドを使用した UI を実装するとき

色

  • 主要なサーフェスには明るい背景を使用することを推奨します
  • ページ背景(surface-base)には #FEFEFE を必ず使用してください
  • カラーパレットは個別の色を 10 色以内に抑えることを推奨します
  • アクセシビリティのため、テキストのコントラスト比を最低 4.5:1 に保ってください
セマンティックトークン
トークンHEXRGB用途
surface-base#FEFEFErgb(254,254,254)ページ背景
surface-raised#04090Brgb(4,9,11)カード、モーダル、浮き上がったサーフェス
text-primary#858A8Ergb(133,138,142)見出し、本文テキスト
text-secondary#C9CCCDrgb(201,204,205)セカンダリ、控えめなテキスト
text-tertiary#B9BCBFrgb(185,188,191)追加テキスト
border-default#DFE1E2rgb(223,225,226)控えめな境界線、区切り線

タイポグラフィ

  • プライマリフォントファミリーには Inter を必ず使用してください
  • 一貫性を保つため、フォントファミリーは 1 つにすることを推奨します
  • 主要な見出しには 88px / extra_bold を必ず使用してください
  • 本文テキストには 39px / 500 を必ず使用してください
  • フォントウェイトの種類を減らすことを推奨します(現在 5 種類検出されています)
  • 見出しには text-balance、本文テキストには text-pretty を必ず使用してください
  • 数値データには tabular-nums を使用することを推奨します
  • 明示的に求められない限り、letter-spacing は絶対に変更しないでください
テキストスタイル
スタイルフォントサイズウェイト色数
heading-1Inter88pxextra_bold#D5D6D71
text-63pxInter63pxsemi_bold#C9CCCD1
bodyInter39px500#858A8E1
text-29pxInter29pxsemi_bold#DBDCDE1
text-27pxInter27px400#B7BABD1
text-17pxInter17px400#B9BCBF1
text-16pxInter16px400#9FA2A61
text-15pxInter15px300#A5A8AC1
text-15pxInter15px400#A4A7AA1
captionInter13px400#3E3E3E1
タイポグラフィの参考情報

フォントファミリー:

  • Inter(14 回使用)

フォントサイズ: 12px, 13px, 15px, 16px, 17px, 27px, 29px, 39px, 63px, 88px

余白

  • 余白には 4px グリッドを必ず使用してください
  • 次のスケールの余白を使用することを推奨します:4px, 5px, 6px, 7px, 65px
  • 要素間のデフォルトの間隔には 5px を使用することを推奨します
  • 任意の余白値は絶対に使用せず、デザインスケールを使用してください
  • コンテナ内のパディングを一貫させることを推奨します

境界線

  • 境界線の角丸には次のスケールを必ず使用してください:19px, 26px, 28px
  • ピル型の要素には 26px 以上の角丸を使用することを推奨します
  • 境界線の幅は一貫して 2px にしてください
  • デフォルトの角丸には 19px を使用することを推奨します
  • 任意の角丸値は絶対に使用せず、デザインスケールを使用してください
  • 要素を区切るには、控えめな境界線(1px)を使用することを推奨します
角丸の参考情報

スケール: 19px, 26px, 28px

レイアウト

  • 基準ビューポート幅 1920px を前提に必ずデザインしてください
  • 要素の幅は 11px で統一することを推奨します
  • 明確な階層を持つ、テキスト主体のレイアウトを保つことを推奨します
  • h-screen は絶対に使用せず、ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を必ず考慮してください
  • 正方形の要素には w-* と h-* の組み合わせではなく、size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1855px、高さ:1080px
  • メインコンテンツ:幅:1920px、高さ:747px
  • メインコンテンツ:幅:1920px、高さ:745px

コンポーネント

ボタン
バリエーション背景テキスト境界線高さ角丸
ゴースト透明#B9BCBFなし--

インタラクティブ状態

フォーカス
  • アクセントカラー(#5E6AD2)を使った 2px のアウトラインを必ず使用してください
  • 2px の outline-offset を必ず使用してください
  • フォーカスインジケーターは絶対に削除しないでください
ホバー
  • ボタン(プライマリ):背景を 10% 明るくします
  • ボタン(セカンダリ):背景に #04090B を使用します
  • リスト項目:背景に #04090B を使用します
無効状態
  • opacity: 0.5 を必ず使用してください
  • cursor: not-allowed を必ず使用してください

インタラクション

  • 破壊的または取り消し不可能な操作には、必ず AlertDialog を使用します
  • 読み込み状態には、構造的なスケルトンを使用することが望ましいです
  • エラーは、操作が行われる場所の近くに必ず表示します
  • input 要素または textarea 要素への貼り付けを決してブロックしません
  • アイコンのみのボタンには、必ず aria-label を追加します

アニメーション

  • 明示的に要求されない限り、アニメーションを追加しません
  • 合成レイヤー上のプロパティ(transform、opacity)のみをアニメーションさせます
  • レイアウトプロパティ(width、height、top、left、margin、padding)は決してアニメーションさせません
  • 登場時のアニメーションには ease-out を使用することが望ましいです
  • インタラクションのフィードバックは、必ず 200ms 以内にします
  • prefers-reduced-motion を尊重することが望ましいです

パフォーマンス

  • 大きな blur() または backdrop-filter のサーフェスをアニメーションさせません
  • アニメーションがアクティブな間以外は、will-change を適用しません
  • レンダリングロジックで表現できる処理に、useEffect を決して使用しません

コメント