miro-ui-skills について
AI エージェントで Miro 風の画面を構築するための設計ガイドです。配色、タイポグラフィ、レイアウト、操作の制約を定め、Inter と 4px グリッドを使うライトモード設計を対象としています。
主な機能
- 01Miro風画面の設計ガイド
- 02セマンティックカラーのトークン
- 03Interのタイポグラフィ規則
- 044pxグリッドとレイアウト制約
- 05アクセシビリティと操作の指針
活用シーン
- 01Miro風デザインシステムの構築
- 02ライトモード画面のスタイル設定
- 03UI実装時のAIエージェントへの指針
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill miro-ui-skillsインストール後、Claude Code で/miro-ui-skillsを入力して読み込まれたか確認します。
同梱ファイルmetadata.json
詳細
Miro UI スキル
AI エージェントで Miro スタイルのインターフェースを構築するための、独自の制約です。
適用する場合
以下の場合は、これらのガイドラインを参照してください。
- ライトモードのインターフェースを構築する場合
- Miro に着想を得たデザインシステムを作成する場合
- Inter フォントと 4px グリッドを使用した UI を実装する場合
色
- 主要なサーフェスには明るい背景を使用することを推奨します
- ページの背景(
surface-base)には#FEFEFEを必ず使用してください - 主要なアクションとフォーカス状態(
accent)には#C2BBFEを必ず使用してください - カラーパレットを絞ることを推奨します(現在 39 色が検出されています)
- アクセシビリティのため、テキストのコントラスト比を 4.5:1 以上に維持してください
セマンティックトークン
| トークン | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #FEFEFE | rgb(254,254,254) | ページの背景 |
surface-raised | #000000 | rgb(0,0,0) | カード、モーダル、盛り上がったサーフェス |
surface-overlay | #EBE4F6 | rgb(235,228,246) | オーバーレイ、ツールチップ、ドロップダウン |
text-primary | #4D4E4F | rgb(77,78,79) | 見出し、本文テキスト |
text-secondary | #4A68AA | rgb(74,104,170) | セカンダリテキスト、控えめなテキスト |
text-tertiary | #666666 | rgb(102,102,102) | 補足テキスト |
border-default | #F1F1F2 | rgb(241,241,242) | 控えめな境界線、区切り線 |
accent | #C2BBFE | rgb(194,187,254) | 主要なアクション、リンク、フォーカス |
warning | #4F4826 | rgb(79,72,38) | 警告状態、注意 |
destructive | #E5802A | rgb(229,128,42) | エラー状態、削除アクション |
タイポグラフィ
- 主要フォントファミリーとして
Interを必ず使用してください - 一貫性を保つため、フォントファミリーは 1 種類にすることを推奨します
- 主要な見出しには
47px/700を必ず使用してください - 本文テキストには
7px/400を必ず使用してください - フォントウェイトを絞ることを推奨します(現在 5 種類が検出されています)
- 見出しには
text-balance、本文テキストにはtext-prettyを必ず使用してください - 数値データには
tabular-numsの使用を推奨します - 明示的な依頼がない限り、文字間隔は絶対に変更しないでください
テキストスタイル
| スタイル | フォント | サイズ | ウェイト | 色 | 数 |
|---|---|---|---|---|---|
heading-1 | Inter | 47px | 700 | #373737 | 1 |
text-37px | Inter | 37px | 700 | #383839 | 1 |
text-23px | Inter | 23px | semi_bold | #292929 | 1 |
text-22px | Inter | 22px | 400 | #717378 | 1 |
text-17px | Inter | 17px | 400 | #B0B0B2 | 1 |
text-16px | Inter | 16px | 400 | #4A68AA | 1 |
text-16px | Inter | 16px | 400 | #5A5A5A | 1 |
text-15px | Inter | 15px | 400 | #4D4E4F | 1 |
text-15px | Inter | 15px | 400 | #B6C3F8 | 1 |
text-14px | Inter | 14px | 400 | #525252 | 1 |
タイポグラフィの参照
フォントファミリー:
Inter(74 回使用)
フォントサイズ: 2px、3px、4px、5px、6px、7px、8px、10px、11px、12px、13px、14px、15px、16px、17px、22px、23px、37px、47px
余白
- 余白には 4px グリッドを必ず使用してください
- 次のスケールの余白を使用することを推奨します:1px、2px、3px、4px、5px、6px、7px、8px
- 要素間のデフォルトの間隔には 2px を使用することを推奨します
- 任意の余白値は絶対に使用しないでください(デザインスケールを使用してください)
- コンテナー内のパディングを一貫させることを推奨します
境界線
- 角丸には次のスケールを必ず使用してください:1px、3px、4px、5px、6px、7px、9px、15px、16px、17px、18px
- 境界線の太さは 1px、2px に限定することを推奨します
- デフォルトの角丸には 1px を使用することを推奨します
- 任意の角丸値は絶対に使用しないでください(デザインスケールを使用してください)
- 要素の区切りには控えめな境界線(1px)を使用することを推奨します
角丸の参照
スケール: 1px、3px、4px、5px、6px、7px、9px、15px、16px、17px、18px
レイアウト
- 基準ビューポート幅 1920px 向けに必ず設計してください
- 一貫した要素幅(9px、4px、10px、12px、7px)を使用することを推奨します
h-screenは絶対に使用せず、ビューポート全体の高さにはh-dvhを使用してください- 固定要素では
safe-area-insetを必ず考慮してください - 正方形の要素には
w-*とh-*の組み合わせではなく、size-*を使用することを推奨します
検出されたレイアウトパターン
- ヘッダー:高さ:79px
- メインコンテンツ:幅:1920px、高さ:929px
- メインコンテンツ:幅:1920px、高さ:1003px
- ヘッダー:高さ:80px
コンポーネント
ボタン
| バリエーション | 背景 | テキスト | 枠線 | 高さ | 角丸 |
|---|---|---|---|---|---|
| ゴースト | 透明 | #4A68AA | なし | - | - |
インタラクティブな状態
フォーカス
- アクセントカラー(
#C2BBFE)の2pxのアウトラインを必ず使用します 2pxのアウトラインオフセットを必ず使用します- フォーカスインジケーターを削除してはいけません
ホバー
- ボタン(プライマリ):背景を10%明るくします
- ボタン(セカンダリ):
#000000の背景を使用します - リスト項目:
#000000の背景を使用します
無効状態
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 対応