mcpField
D
dribbble-ui-skills

dribbble-ui-skills

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

dribbble-ui-skills について

AIエージェント向けのDribbble風インターフェース設計ガイドラインです。ライトモードのUIやデザインシステムを対象に、色、タイポグラフィ、レイアウト、操作性、アクセシビリティ、パフォーマンスの制約を定めます。

主な機能

  1. 01Dribbble風デザインの制約
  2. 02カラーとセマンティックトークン
  3. 03Interのタイポグラフィ規則
  4. 044pxグリッドとレイアウト規則
  5. 05操作、アニメーション、性能の規則

活用シーン

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

インストール

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

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

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

同梱ファイルmetadata.json

詳細

Dribbble UI スキル

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

適用するタイミング

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

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

色

  • 主なサーフェスには明るい背景を使用することを推奨します
  • ページの背景(surface-base)には #000000 を使用する必要があります
  • プライマリアクションとフォーカス状態(accent)には #F2B5D7 を使用する必要があります
  • カラーパレットを縮小することを推奨します(現在、40 色が検出されています)
  • アクセシビリティのため、テキストのコントラスト比を少なくとも 4.5:1 に維持する必要があります
セマンティックトークン
トークンHEXRGB用途
surface-base#000000rgb(0,0,0)ページの背景
surface-raised#FEFEFDrgb(254,254,253)カード、モーダル、浮き上がったサーフェス
surface-overlay#1B1B1Crgb(27,27,28)オーバーレイ、ツールチップ、ドロップダウン
text-primary#5C5B60rgb(92,91,96)見出し、本文テキスト
text-secondary#797886rgb(121,120,134)セカンダリテキスト、控えめなテキスト
text-tertiary#9E9EA7rgb(158,158,167)追加テキスト
border-default#0C110Frgb(12,17,15)控えめなボーダー、区切り線
destructive#ECC6B6rgb(236,198,182)エラー状態、削除アクション
accent#F2B5D7rgb(242,181,215)プライマリアクション、リンク、フォーカス
warning#FEFEFDrgb(254,254,253)警告状態、注意事項

タイポグラフィ

  • プライマリフォントファミリーには Inter を使用する必要があります
  • 一貫性を保つため、単一のフォントファミリーを使用することを推奨します
  • プライマリ見出しには 42px / 700 を使用する必要があります
  • 本文テキストには 14px / 300 を使用する必要があります
  • フォントウェイトを減らすことを推奨します(現在、6 種類が検出されています)
  • 見出しには text-balance、本文テキストには text-pretty を使用する必要があります
  • 数値データには tabular-nums を使用することを推奨します
  • 明示的に要求されない限り、文字間隔を変更してはなりません
テキストスタイル
スタイルフォントサイズウェイト色件数
heading-1Inter42px700#1D1C271
text-37pxInter37px700#2323231
text-34pxInter34pxextra_bold#2823421
text-27pxInter27pxsemi_bold#CCC9D81
text-19pxInter19px400#B7B7B71
text-17pxInter17px400#9E9EA71
text-16pxInter16px400#6262621
bodyInter14px300#46607F1
body-secondaryInter14px400#77767D1
body-secondaryInter14px400#6160661
タイポグラフィの参考情報

フォントファミリー:

  • Inter(80 回使用)

フォントサイズ: 3px, 4px, 5px, 6px, 7px, 8px, 9px, 10px, 11px, 12px, 13px, 14px, 16px, 17px, 19px, 27px, 34px, 37px, 42px

余白

  • 余白には 4px グリッドを使用する必要があります
  • 1px、2px、3px、4px、5px、6px、7px、8px のスケールから余白を選ぶことを推奨します
  • 要素間のデフォルトの間隔には 4px を使用することを推奨します
  • 任意の余白値は使用してはなりません(デザインスケールを使用してください)
  • コンテナー内のパディングを一貫させることを推奨します

ボーダー

  • 角丸には次のスケールを使用する必要があります:1px, 2px, 3px, 4px, 5px, 6px, 7px, 9px, 14px, 15px, 16px, 19px, 22px, 23px
  • ピル型要素には 22px 以上の角丸を使用することを推奨します
  • ボーダー幅は 1px、5px に制限することを推奨します
  • デフォルトの角丸には 14px を使用することを推奨します
  • 任意の角丸値は使用してはなりません(デザインスケールを使用してください)
  • 要素を区切るには控えめなボーダー(1px)を使用することを推奨します
角丸の参考情報

スケール: 1px, 2px, 3px, 4px, 5px, 6px, 7px, 9px, 14px, 15px, 16px, 19px, 22px, 23px

レイアウト

  • 基準のビューポート幅を 1920px として設計する必要があります
  • 一貫した要素幅として 8px、13px、18px、9px、24px を使用することを推奨します
  • 明確な階層を持つ、テキスト主体のレイアウトを維持することを推奨します
  • h-screen は使用せず、ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を考慮する必要があります
  • 正方形の要素には w-* + h-* の代わりに size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1920px、高さ:1013px

コンポーネント

ボタン
バリアント背景テキスト枠線高さ角丸
ゴースト透明#5C5B60なし--

インタラクティブな状態

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

コメント