mcpField
S
stripe-ui-skills

stripe-ui-skills

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

stripe-ui-skills について

stripe-ui-skillsは、AIエージェントがStripe風のインターフェースを作る際の設計制約をまとめています。色やタイポグラフィ、レイアウト、操作性、アクセシビリティを扱います。

主な機能

  1. 01Stripe風の設計制約
  2. 02カラーとコントラストの指針
  3. 03Interと文字サイズの規則
  4. 04余白、境界線、レイアウト規則
  5. 05操作性とアクセシビリティ要件
  6. 06アニメーションと性能の制約

活用シーン

  1. 01ライトモードの画面構築
  2. 02Stripe風デザインシステムの作成
  3. 03Interと4pxグリッドを使ったUI実装

インストール

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

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

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

同梱ファイルmetadata.json

詳細

Stripe UI スキル

AI エージェントで Stripe 風のインターフェースを構築するための、意見を反映した制約です。

適用する場面

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

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

色

  • 主要なサーフェスには明るい背景を使用することを推奨します
  • ページの背景(surface-base)には #F2F6F9 を必ず使用してください
  • 主要なアクションとフォーカス状態(accent)には #517BDF を必ず使用してください
  • カラーパレットを絞ることを推奨します(現在、30 色が検出されています)
  • アクセシビリティのため、テキストのコントラスト比を 4.5:1 以上に必ず保ってください
セマンティックトークン
トークンHEXRGB用途
surface-base#F2F6F9rgb(242,246,249)ページの背景
surface-raised#071A34rgb(7,26,52)カード、モーダル、浮き上がったサーフェス
text-primary#9DA1A9rgb(157,161,169)見出し、本文テキスト
text-secondary#B1BCC7rgb(177,188,199)セカンダリテキスト、薄いテキスト
text-tertiary#737883rgb(115,120,131)追加のテキスト
border-default#131E2Brgb(19,30,43)控えめな境界線、区切り線
success#75B88Argb(117,184,138)成功状態、確認
accent#517BDFrgb(81,123,223)主要なアクション、リンク、フォーカス
warning#FAE6C2rgb(250,230,194)警告状態、注意
destructive#D29E79rgb(210,158,121)エラー状態、削除アクション

タイポグラフィ

  • 主なフォントファミリーには Inter を必ず使用してください
  • 一貫性を保つため、フォントファミリーを 1 つにすることを推奨します
  • 主要な見出しには 53px / 700 を必ず使用してください
  • 本文テキストには 28px / semi_bold を必ず使用してください
  • フォントウェイトを絞ることを推奨します(現在、5 種類が検出されています)
  • 見出しには text-balance、本文テキストには text-pretty を必ず使用してください
  • 数値データには tabular-nums を使用することを推奨します
  • 明示的に求められない限り、字間を変更しないでください
テキストスタイル
スタイルフォントサイズウェイト色数
heading-1Inter53px700#18105B1
bodyInter28pxsemi_bold#2424241
body-secondaryInter27pxsemi_bold#2D2D2D1
body-secondaryInter26pxsemi_bold#517BDF1
text-24pxInter24pxsemi_bold#EBD6F31
text-18pxInter18px500#E768741
text-18pxInter18pxsemi_bold#2D2D2D1
text-18pxInter18pxsemi_bold#3E3D3D1
text-16pxInter16px400#F6CFB71
text-15pxInter15px400#6268701
タイポグラフィのリファレンス

フォントファミリー:

  • Inter(62 回使用)

フォントサイズ: 5px, 6px, 7px, 8px, 9px, 10px, 11px, 12px, 13px, 14px, 15px, 16px, 18px, 24px, 26px, 27px, 28px, 53px

余白

  • 余白には 4px グリッドを必ず使用してください
  • 次のスケールから余白を使用することを推奨します:1px, 2px, 3px, 4px, 5px, 11px, 12px, 13px
  • 要素間のデフォルトの間隔には 5px を使用することを推奨します
  • 任意の余白値は使用しないでください(デザインスケールを使用してください)
  • コンテナー内のパディングを一貫させることを推奨します

境界線

  • 次のスケールから border-radius を必ず使用してください:3px, 4px, 7px, 15px, 22px, 33px, 35px
  • ピル形状の要素には 22px 以上の角丸を使用することを推奨します
  • 境界線の幅は 1px, 2px, 3px に制限することを推奨します
  • デフォルトの border-radius には 22px を使用することを推奨します
  • 任意の border-radius 値は使用しないでください(デザインスケールを使用してください)
  • 要素を区切るには、控えめな 1px の境界線を使用することを推奨します
角丸のリファレンス

スケール: 3px, 4px, 7px, 15px, 22px, 33px, 35px

レイアウト

  • 基準ビューポート幅 1920px 向けに必ず設計してください
  • 要素の幅は、次の値で統一することを推奨します:10px, 227px, 7px, 30px, 17px
  • 明確な階層を持つ、テキスト中心のレイアウトを維持することを推奨します
  • h-screen は使用せず、ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を必ず考慮してください
  • 正方形の要素には、w-* と h-* の組み合わせの代わりに size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1920px、高さ:1080px
  • メインコンテンツ:幅:1920px、高さ:1045px
  • ヘッダー:高さ:69px

コンポーネント

  • 入力フィールドの高さには 0px を必ず使用してください
ボタン
バリアント背景テキスト境界線高さ角丸
ゴースト透明#737883なし--
入力
  • 高さ:0px

インタラクティブな状態

フォーカス
  • アクセントカラー(#517BDF)の2pxのアウトラインを必ず使用してください
  • 2pxのアウトラインオフセットを必ず使用してください
  • フォーカスインジケーターを削除しないでください
ホバー
  • ボタン(プライマリ):背景を10%明るくしてください
  • ボタン(セカンダリ):背景に#071A34を使用してください
  • リスト項目:背景に#071A34を使用してください
無効状態
  • 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を使用しないでください

コメント