mcpField
F
front-ui-skills

front-ui-skills

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

front-ui-skills について

front-ui-skillsは、Front風のライトモード画面を作るAIエージェント向けの設計制約です。色や文字、操作、パフォーマンスの指針を定めています。

主な機能

  1. 01ライトモードの配色とセマンティックトークン
  2. 02Interのタイポグラフィと文字スタイル
  3. 034px間隔と角丸のスケール
  4. 04アクセシブルなフォーカスと操作状態
  5. 05アニメーションとパフォーマンスの制約

活用シーン

  1. 01Front風デザインシステムの構築
  2. 02ライトモードUIルールの統一
  3. 03アクセシビリティと操作性の確認

インストール

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

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

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

同梱ファイルmetadata.json

詳細

Front UI スキル

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

適用する場面

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

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

色

  • 主要なサーフェスには明るい背景を使用することを推奨します
  • ページの背景(surface-base)には #FFFFFF を必ず使用してください
  • プライマリアクションとフォーカス状態(accent)には #C8CC51 を必ず使用してください
  • カラーパレットを絞ることを推奨します(現在、30 色が検出されています)
  • アクセシビリティのため、テキストのコントラスト比を 4.5:1 以上に保ってください
セマンティックトークン
トークンHEXRGB用途
surface-base#FFFFFFrgb(255,255,255)ページの背景
surface-raised#240733rgb(36,7,51)カード、モーダル、浮き上がったサーフェス
surface-overlay#503AF3rgb(80,58,243)オーバーレイ、ツールチップ、ドロップダウン
text-primary#978BF0rgb(151,139,240)見出し、本文テキスト
text-secondary#D1D1D1rgb(209,209,209)セカンダリテキスト、控えめなテキスト
text-tertiary#8F8F8Frgb(143,143,143)補足テキスト
border-default#DDD4F5rgb(221,212,245)控えめな境界線、区切り線
accent#C8CC51rgb(200,204,81)プライマリアクション、リンク、フォーカス
warning#B49F65rgb(180,159,101)警告状態、注意事項

タイポグラフィ

  • プライマリフォントファミリーには Inter を必ず使用してください
  • 一貫性を保つため、フォントファミリーは 1 種類にすることを推奨します
  • プライマリ見出しには 58px / 700 を必ず使用してください
  • 本文テキストには 26px / 700 を必ず使用してください
  • フォントの太さを絞ることを推奨します(現在、4 種類が検出されています)
  • 見出しには text-balance を、本文テキストには text-pretty を必ず使用してください
  • 数値データには tabular-nums を使用することを推奨します
  • 明示的に要求されない限り、文字間隔は変更しないでください
テキストスタイル
スタイルフォントサイズ太さ色数
heading-1Inter58px700#E7E1E81
bodyInter26px700#EBE5EC1
text-17pxInter17px400#AC99B31
text-16pxInter16px400#46541B1
text-15pxInter15px400#977FAF1
text-15pxInter15px400#594B5F1
text-15pxInter15px400#BCABC21
text-15pxInter15px400#C8B8CD1
text-14pxInter14px400#977FB01
text-14pxInter14px400#9880B01
タイポグラフィの参照情報

フォントファミリー:

  • Inter(79 回使用)

フォントサイズ: 5px、6px、7px、8px、9px、10px、11px、12px、13px、14px、15px、16px、17px、26px、58px

余白

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

境界線

  • 角丸には次のスケールを必ず使用してください:1px、2px、3px、5px、6px、18px、20px
  • ピル型の要素には 20px 以上の角丸を使用することを推奨します
  • 境界線の幅は 1px、2px、5px に限定することを推奨します
  • デフォルトの角丸には 3px を使用することを推奨します
  • 任意の角丸値は使用しないでください(デザインスケールを使用してください)
  • 要素の区切りには控えめな境界線(1px)を使用することを推奨します
角丸の参照情報

スケール: 1px、2px、3px、5px、6px、18px、20px

レイアウト

  • 基準ビューポート幅 1920px 向けに必ずデザインしてください
  • 要素の幅を一貫させることを推奨します:10px、11px、6px、8px、20px
  • 明確な階層を持つ、テキスト中心のレイアウトを維持することを推奨します
  • h-screen は使用せず、ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を必ず考慮してください
  • 正方形の要素には、w-* と h-* の組み合わせではなく size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1920px、高さ:639px
  • メインコンテンツ:幅:1267px、高さ:569px
  • メインコンテンツ:幅:1255px、高さ:569px
  • ヘッダー:高さ:75px

コンポーネント

ボタン
バリエーション背景テキスト枠線高さ角丸
ゴーストtransparent#978BF0none--

インタラクティブな状態

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

コメント