mcpField
T
things-ui-skills

things-ui-skills

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

things-ui-skills について

things-ui-skills は、AI エージェントが Things 風のインターフェースを作る際のデザイン制約です。ライトモードの UI に向けた視覚トークンと実装指針を定めています。

主な機能

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

活用シーン

  1. 01Things 風デザインシステムの構築
  2. 02ライトモードのスタイル統一
  3. 03アクセシブルな操作パターンの確認

インストール

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

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

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

同梱ファイルmetadata.json

詳細

Things UI Skills

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

適用する場面

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

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

色

  • 主なサーフェスには明るい背景を使用することを推奨します
  • ページの背景(surface-base)には #EEF2F5 を使用する必要があります
  • プライマリアクションとフォーカス状態(accent)には #729AE0 を使用する必要があります
  • 色のパレットは異なる色を 5 色以内に抑えることを推奨します
  • アクセシビリティのため、テキストのコントラスト比を 4.5:1 以上に保つ必要があります
セマンティックトークン
トークンHEXRGB用途
surface-base#EEF2F5rgb(238,242,245)ページの背景
text-primary#729AE0rgb(114,154,224)見出し、本文
text-2#5A5E61rgb(90,94,97)補足テキスト
text-tertiary#2F343Brgb(47,52,59)補足テキスト
accent#729AE0rgb(114,154,224)プライマリアクション、リンク、フォーカス

タイポグラフィ

  • プライマリフォントファミリーには Inter を使用する必要があります
  • 一貫性を保つため、単一のフォントファミリーを使用することを推奨します
  • プライマリ見出しには 49px / 700 を使用する必要があります
  • 本文には 23px / 400 を使用する必要があります
  • フォントウェイトの種類を減らすことを推奨します(現在 4 種類が検出されています)
  • 見出しには text-balance、本文には text-pretty を使用する必要があります
  • 数値データには tabular-nums を使用することを推奨します
  • 明示的に要求されない限り、letter-spacing を変更してはいけません
テキストスタイル
スタイルフォントサイズウェイト色数
heading-1Inter49px700#2F343B1
bodyInter23px400#5A5E611
text-20pxInter20px500#729AE01
text-19pxInter19pxsemi_bold#9298A01
text-14pxInter14px400#9499A11
text-14pxInter14px400#989CA41
captionInter11px400#989DA41
タイポグラフィの参照

フォントファミリー:

  • Inter(7 回使用)

フォントサイズ: 11px、14px、19px、20px、23px、49px

余白

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

ボーダー

  • 任意の border-radius 値を使用してはいけません(デザインスケールを使用してください)
  • 要素を分けるため、控えめなボーダー(1px)を使用することを推奨します

レイアウト

  • 基準となるビューポート幅を 1920px としてデザインする必要があります
  • 要素の幅を一貫させることを推奨します:35px、64px
  • 明確な階層を備えた、テキスト主体のレイアウトを保つことを推奨します
  • h-screen を使用してはいけません。ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を考慮する必要があります
  • 正方形の要素には w-* + h-* ではなく size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1920px、高さ:1080px
  • メインコンテンツ:幅:1920px、高さ:1024px

コンポーネント

インタラクティブ状態

フォーカス
  • アクセントカラー(#729AE0)を使った 2px のアウトラインを使用する必要があります
  • 2px の outline-offset を使用する必要があります
  • フォーカスインジケーターを削除してはいけません
ホバー
  • ボタン(プライマリ):背景を 10% 明るくします
  • ボタン(セカンダリ):surface-raised の背景を使用します
  • リスト項目:surface-raised の背景を使用します
無効状態
  • 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 を使用しないでください

コメント