deel-ui-skills について
deel-ui-skills は、AI エージェントが Deel 風のインターフェースを作る際のデザイン制約です。ライトモードの色、タイポグラフィ、レイアウト、操作の指針を定めています。
主な機能
- 01ライトモードのカラートークン
- 02Inter のタイポグラフィ規則
- 034px 間隔グリッド
- 04レイアウトとアクセシビリティの指針
- 05操作とアニメーションの制約
活用シーン
- 01Deel 風デザインシステムの構築
- 02ライトモードのスタイル統一
- 03アクセシブルな操作パターンの確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill deel-ui-skillsインストール後、Claude Code で/deel-ui-skillsを入力して読み込まれたか確認します。
同梱ファイルmetadata.json
詳細
Deel UI スキル
AI エージェントで Deel スタイルのインターフェースを構築するための、独自の制約です。
適用する場面
以下の場合に、このガイドラインを参照してください。
- ライトモードのインターフェースを構築する場合
- Deel を参考にしたデザインシステムを作成する場合
- Inter フォントと 4px グリッドを使って UI を実装する場合
色
- プライマリサーフェスには明るい背景を使用することを推奨します
- ページの背景(
surface-base)には#FDFDFDを必ず使用してください - プライマリアクションとフォーカス状態(
accent)には#A2CDFBを必ず使用してください - カラーパレットを絞ることを推奨します(現在、32 色が検出されています)
- アクセシビリティのため、テキストのコントラスト比を少なくとも 4.5:1 に保ってください
セマンティックトークン
| トークン | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #FDFDFD | rgb(253,253,253) | ページの背景 |
surface-raised | #141414 | rgb(20,20,20) | カード、モーダル、浮き上がったサーフェス |
surface-overlay | #000000 | rgb(0,0,0) | オーバーレイ、ツールチップ、ドロップダウン |
text-primary | #909090 | rgb(144,144,144) | 見出し、本文テキスト |
text-secondary | #C4C4C4 | rgb(196,196,196) | セカンダリテキスト、控えめなテキスト |
text-tertiary | #344C65 | rgb(52,76,101) | その他のテキスト |
border-default | #86ADD7 | rgb(134,173,215) | 控えめな境界線、区切り線 |
accent | #A2CDFB | rgb(162,205,251) | プライマリアクション、リンク、フォーカス |
warning | #907848 | rgb(144,120,72) | 警告状態、注意喚起 |
タイポグラフィ
- プライマリフォントファミリーには
Interを必ず使用してください - 一貫性を保つため、フォントファミリーは 1 つにすることを推奨します
- プライマリ見出しには
53px/700を必ず使用してください - 本文テキストには
15px/400を必ず使用してください - フォントウェイトの種類を絞ることを推奨します(現在、6 種類が検出されています)
- 見出しには
text-balance、本文テキストにはtext-prettyを必ず使用してください - 数値データには
tabular-numsを使用することを推奨します - 明示的に指示されていない限り、letter-spacing は変更しないでください
テキストスタイル
| スタイル | フォント | サイズ | ウェイト | 色 | 数 |
|---|---|---|---|---|---|
heading-1 | Inter | 53px | 700 | #27303B | 1 |
heading-2 | Inter | 51px | 700 | #272623 | 1 |
text-27px | Inter | 27px | 700 | #2C2C2C | 1 |
text-26px | Inter | 26px | 700 | #5A748E | 1 |
text-26px | Inter | 26px | semi_bold | #55708C | 1 |
text-25px | Inter | 25px | 700 | #576F88 | 1 |
text-24px | Inter | 24px | 700 | #546A85 | 1 |
text-24px | Inter | 24px | 700 | #516A83 | 1 |
text-18px | Inter | 18px | 400 | #3D5A78 | 1 |
text-18px | Inter | 18px | 400 | #6080A0 | 1 |
タイポグラフィのリファレンス
フォントファミリー:
Inter(75 回使用)
フォントサイズ: 5px, 6px, 7px, 8px, 9px, 10px, 11px, 12px, 13px, 15px, 16px, 18px, 24px, 25px, 26px, 27px, 51px, 53px
余白
- 余白には 4px グリッドを必ず使用してください
- 次のスケールの余白を使用することを推奨します:1px, 2px, 3px, 4px, 5px, 6px, 7px, 8px
- 要素間のデフォルトの間隔には 2px を使用することを推奨します
- 任意の余白値は使用しないでください(デザインスケールを使用してください)
- コンテナー内のパディングを一貫させることを推奨します
境界線
- 次のスケールの border-radius を必ず使用してください:0px, 1px, 2px, 3px, 4px, 5px, 6px, 7px, 9px, 12px, 15px, 17px, 18px, 22px, 23px
- ピル形状の要素には 22px 以上の角丸を使用することを推奨します
- 境界線の幅は 1px、2px に抑えることを推奨します
- デフォルトの border-radius には 3px を使用することを推奨します
- 任意の border-radius 値は使用しないでください(デザインスケールを使用してください)
- 要素を区切るには控えめな境界線(1px)を使用することを推奨します
角丸のリファレンス
スケール: 0px, 1px, 2px, 3px, 4px, 5px, 6px, 7px, 9px, 12px, 15px, 17px, 18px, 22px, 23px
レイアウト
- 基準ビューポート幅 1920px を想定して設計してください
- 要素の幅を一定にすることを推奨します:9px, 12px, 11px, 20px, 14px
- 明確な階層を持つ、テキスト中心のレイアウトを維持することを推奨します
h-screenは使用せず、ビューポート全体の高さにはh-dvhを使用してください- 固定要素では
safe-area-insetを必ず考慮してください - 正方形の要素には
w-*とh-*の組み合わせではなく、size-*を使用することを推奨します
検出されたレイアウトパターン
- メインコンテンツ:幅:1920px、高さ:876px
- メインコンテンツ:幅:1920px、高さ:879px
- メインコンテンツ:幅:1920px、高さ:596px
- ヘッダー:高さ:64px
- ヘッダー:高さ:63px
コンポーネント
ボタン
| バリエーション | 背景 | テキスト | 枠線 | 高さ | 角丸 |
|---|---|---|---|---|---|
| ゴースト | 透明 | #344C65 | なし | - | - |
インタラクティブな状態
フォーカス
- アクセントカラー(
#A2CDFB)の2pxのアウトラインを必ず使用してください 2pxのアウトラインオフセットを必ず使用してください- フォーカスインジケーターを削除しないでください
ホバー
- ボタン(プライマリ):背景を10%明るくしてください
- ボタン(セカンダリ):背景に
#141414を使用してください - リスト項目:背景に
#141414を使用してください
無効状態
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を使用しないでください
コメント
Markdown 対応