mcpField
R
readwise-ui-skills

readwise-ui-skills

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

readwise-ui-skills について

readwise-ui-skillsは、AIエージェントがReadwise風のインターフェースを構築するための設計ガイドです。色やレイアウト、アクセシビリティ、操作性、パフォーマンスの制約を定めています。

主な機能

  1. 01Readwise風のデザイン規則
  2. 02カラーとタイポグラフィのトークン
  3. 03余白と境界線のスケール
  4. 04アクセシビリティとフォーカスの指針
  5. 05操作性とパフォーマンスの制約

活用シーン

  1. 01ライトモードのインターフェース構築
  2. 02Readwise風デザインシステムの作成
  3. 03Interと4pxグリッドの指針適用

インストール

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

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

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

同梱ファイルmetadata.json

詳細

Readwise UI スキル

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

適用する場合

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

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

色

  • 主要なサーフェスには明るい背景を使用することを推奨します
  • ページの背景(surface-base)には #FFFFFF を使用する必要があります
  • 主要なアクションとフォーカス状態(accent)には #3C78C1 を使用する必要があります
  • カラーパレットを絞ることを推奨します(現在、24 色が検出されています)
  • アクセシビリティのために、テキストのコントラスト比を少なくとも 4.5:1 に保つ必要があります
セマンティックトークン
トークンHEXRGB用途
surface-base#FFFFFFrgb(255,255,255)ページの背景
surface-raised#3C78C1rgb(60,120,193)カード、モーダル、浮き上がったサーフェス
surface-overlay#F7EFA0rgb(247,239,160)オーバーレイ、ツールチップ、ドロップダウン
text-primary#323232rgb(50,50,50)見出し、本文テキスト
text-secondary#83B2E7rgb(131,178,231)補助テキスト、控えめなテキスト
text-tertiary#A3995Drgb(163,153,93)追加のテキスト
border-default#2165BCrgb(33,101,188)控えめな境界線、区切り線
accent#3C78C1rgb(60,120,193)主要なアクション、リンク、フォーカス
warning#F4CF8Frgb(244,207,143)警告状態、注意
destructive#F0791Ergb(240,121,30)エラー状態、削除アクション

タイポグラフィ

  • 主要なフォントファミリーとして Inter を使用する必要があります
  • 一貫性を保つため、フォントファミリーは 1 つにすることを推奨します
  • 主要な見出しには 48px / 700 を使用する必要があります
  • 本文テキストには 28px / semi_bold を使用する必要があります
  • フォントウェイトを絞ることを推奨します(現在、5 種類が検出されています)
  • 見出しには text-balance、本文テキストには text-pretty を使用する必要があります
  • 数値データには tabular-nums を使用することを推奨します
  • 明示的なリクエストがない限り、文字間隔を変更してはなりません
テキストスタイル
スタイルフォントサイズウェイト色数
heading-1Inter48px700#3839381
text-38pxInter38pxextra_bold#3030301
bodyInter28pxsemi_bold#3131311
text-22pxInter22pxsemi_bold#3232321
text-22pxInter22pxsemi_bold#3838381
text-22pxInter22px400#4C4C4C1
text-21pxInter21px400#635A371
text-18pxInter18pxsemi_bold#D5D5D51
text-16pxInter16px400#9D9D9C1
text-14pxInter14px400#BDD8EF1
タイポグラフィのリファレンス

フォントファミリー:

  • Inter(49 回使用)

フォントサイズ: 5px, 6px, 7px, 8px, 9px, 10px, 11px, 12px, 13px, 14px, 16px, 18px, 21px, 22px, 28px, 38px, 48px

余白

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

境界線

  • 次のスケールから境界線の角丸を使用する必要があります:2px, 5px, 7px, 9px
  • 境界線の幅は 1px または 2px に制限することを推奨します
  • 標準の角丸には 5px を使用することを推奨します
  • 任意の角丸値を使用してはなりません(デザインスケールを使用してください)
  • 要素を区切るには控えめな境界線(1px)を使用することを推奨します
角丸のリファレンス

スケール: 2px, 5px, 7px, 9px

レイアウト

  • 基準ビューポート幅 1920px 向けに設計する必要があります
  • 要素の幅を一定にすることを推奨します:6px, 9px, 64px, 5px, 160px
  • 明確な階層を持つ、テキスト主体のレイアウトを維持することを推奨します
  • h-screen は使用せず、ビューポート全体の高さには h-dvh を使用してください
  • 固定要素では safe-area-inset を考慮する必要があります
  • 正方形の要素には w-* と h-* の組み合わせではなく、size-* を使用することを推奨します
検出されたレイアウトパターン
  • メインコンテンツ:幅:1920px、高さ:1080px
  • メインコンテンツ:幅:1364px、高さ:913px
  • メインコンテンツ:幅:1364px、高さ:903px
  • メインコンテンツ:幅:963px、高さ:569px
  • ヘッダー:高さ:66px

コンポーネント

ボタン
バリアント背景テキスト枠線高さ角丸
ゴースト透明#83B2E7なし--

インタラクティブな状態

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

コメント