mcpField
L
lattice-ui-skills

lattice-ui-skills

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

lattice-ui-skills について

lattice-ui-skillsは、AIエージェントがLattice風のインターフェースを作るための設計制約です。ライトモードの見た目やレイアウト、操作規則を示します。

主な機能

  1. 01ライトモードのカラー定義
  2. 02Interのタイポグラフィ規則
  3. 034px間隔のグリッド
  4. 04コンポーネントとレイアウトの制約
  5. 05アクセシビリティと操作の指針
  6. 06アニメーションと性能の制限

活用シーン

  1. 01Lattice風デザインシステムの構築
  2. 02ライトモード画面の実装
  3. 03アクセシビリティと操作パターンの確認

インストール

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

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

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

同梱ファイルmetadata.json

詳細

Lattice UI スキル

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

適用する場面

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

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

色

  • 主要なサーフェスには、明るい背景を使用することを推奨します
  • ページの背景(surface-base)には #FEFDFC を使用する必要があります
  • 主要なアクションとフォーカス状態(accent)には #26B177 を使用する必要があります
  • カラーパレットを絞ることを推奨します(現在 37 色が検出されています)
  • アクセシビリティのため、テキストのコントラスト比を 4.5:1 以上に保つ必要があります
セマンティックトークン
トークンHEXRGB用途
surface-base#FEFDFCrgb(254,253,252)ページの背景
surface-raised#DDFCDArgb(221,252,218)カード、モーダル、隆起したサーフェス
surface-overlay#EDFAF3rgb(237,250,243)オーバーレイ、ツールチップ、ドロップダウン
text-primary#6B6F6Ergb(107,111,110)見出し、本文テキスト
text-secondary#969C9Brgb(150,156,155)補助テキスト、控えめなテキスト
text-tertiary#5E9892rgb(94,152,146)追加のテキスト
border-default#F5F4F2rgb(245,244,242)控えめな境界線、区切り線
accent#26B177rgb(38,177,119)主要なアクション、リンク、フォーカス
success#EDFAF3rgb(237,250,243)成功状態、確認
warning#FEFDFCrgb(254,253,252)警告状態、注意

タイポグラフィ

  • 主要なフォントファミリーとして Inter を使用する必要があります
  • 一貫性のため、単一のフォントファミリーを使用することを推奨します
  • 主要な見出しには 71px / 700 を使用する必要があります
  • 本文テキストには 40px / 700 を使用する必要があります
  • フォントウェイトを絞ることを推奨します(現在 6 種類が検出されています)
  • 見出しには text-balance、本文テキストには text-pretty を使用する必要があります
  • 数値データには tabular-nums の使用を推奨します
  • 明示的に要求されない限り、letter-spacing を変更しないでください
テキストスタイル
スタイルフォントサイズウェイト色数
heading-1Inter71px700#1224241
heading-2Inter71px700#205D421
text-57pxInter57px700#144F361
bodyInter40px700#1626251
text-21pxInter21px500#9298961
text-20pxInter20px400#3B43421
text-20pxInter20px400#9195931
text-19pxInter19px500#949A981
text-19pxInter19px500#9AA09F1
text-17pxInter17px400#6269681
タイポグラフィのリファレンス

フォントファミリー:

  • Inter(76 回使用)

フォントサイズ: 3px、4px、5px、6px、7px、8px、9px、10px、11px、12px、13px、14px、15px、16px、17px、19px、20px、21px、40px、57px、71px

余白

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

境界線

  • 次のスケールから border-radius を使用する必要があります:0px、1px、2px、3px、4px、5px、6px、7px、8px、9px、10px、12px、13px、16px、18px、19px、56px、63px
  • ピル形状の要素には 56px 以上の半径を使用することを推奨します
  • 境界線の幅は 1px、2px、3px、4px に制限することを推奨します
  • デフォルトの border-radius には 4px を使用することを推奨します
  • 任意の border-radius 値は使用しないでください(デザインスケールを使用してください)
  • 要素を区切るには、控えめな境界線(1px)を使用することを推奨します
Border Radius のリファレンス

スケール: 0px、1px、2px、3px、4px、5px、6px、7px、8px、9px、10px、12px、13px、16px、18px、19px、56px、63px

レイアウト

  • 基準のビューポート幅を 1920px として設計する必要があります
  • 一貫した要素幅として、6px、15px、7px、14px、474px を使用することを推奨します
  • h-screen は使用せず、ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を考慮する必要があります
  • 正方形の要素には w-* + h-* の代わりに size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1920px、高さ:918px
  • ヘッダー:高さ:47px

コンポーネント

ボタン
バリアント背景テキスト枠線高さ角丸
ゴーストtransparent-none--

インタラクティブな状態

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

コメント