mcpField
D
design-system

design-system

github.com/nextlevelbuilderデザイン・UI142.1k32.8k 回インストール3 日前に更新
リポジトリ

design-system について

デザイントークン、コンポーネント仕様、スライドシステムを作成するスキルです。デザインからフロントエンドへの引き継ぎを想定し、プリミティブ・セマンティック・コンポーネントの三層構造と生成・検証スクリプトを備えています。

主な機能

  1. 01三層のトークン設計
  2. 02CSS トークンの生成
  3. 03トークン使用状況の検証
  4. 04コンポーネント状態の仕様定義
  5. 05Tailwind テーマ連携
  6. 06トークンベースのスライドシステム

活用シーン

  1. 01再利用可能なトークンシステムの構築
  2. 02コード内のハードコード値の確認
  3. 03コンポーネント状態とバリアントの定義
  4. 04ブランド準拠のプレゼン資料作成

インストール

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

$npx skills add https://github.com/nextlevelbuilder/ui-ux-pro-max-skill --skill ckm:design-system

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

data/
slide-backgrounds.csv
slide-color-logic.csv
slide-layout-logic.csv
slide-charts.csv
slide-copy.csv
slide-layouts.csv
slide-typography.csv
slide-strategies.csv
references/
component-specs.md
component-tokens.md
primitive-tokens.md
semantic-tokens.md
token-architecture.md
states-and-variants.md
tailwind-integration.md
scripts/
fetch-background.py
generate-tokens.cjs
generate-slide.py
html-token-validator.py
embed-tokens.cjs
search-slides.py
validate-tokens.cjs
slide-token-validator.py
slide_search_core.py
scripts/tests/
test_validate_tokens.py
templates/
design-tokens-starter.json

詳細

デザインシステム

トークンアーキテクチャ、コンポーネント仕様、体系的なデザイン、スライド生成。

使用する場面

  • デザイントークンの作成
  • コンポーネントの状態定義
  • CSS 変数システム
  • 余白/タイポグラフィのスケール
  • デザインからコードへの引き継ぎ
  • Tailwind テーマの設定
  • スライド/プレゼンテーションの生成

トークンアーキテクチャ

読み込み:references/token-architecture.md

3 層構造
Primitive (raw values)
       ↓
Semantic (purpose aliases)
       ↓
Component (component-specific)

例:

/* Primitive */
--color-blue-600: #2563EB;

/* Semantic */
--color-primary: var(--color-blue-600);

/* Component */
--button-bg: var(--color-primary);

クイックスタート

トークンを生成:

node scripts/generate-tokens.cjs --config tokens.json -o tokens.css

使用状況を検証:

node scripts/validate-tokens.cjs --dir src/

リファレンス

トピックファイル
トークンアーキテクチャreferences/token-architecture.md
プリミティブトークンreferences/primitive-tokens.md
セマンティックトークンreferences/semantic-tokens.md
コンポーネントトークンreferences/component-tokens.md
コンポーネント仕様references/component-specs.md
状態とバリアントreferences/states-and-variants.md
Tailwind 連携references/tailwind-integration.md

コンポーネント仕様のパターン

プロパティデフォルトホバーアクティブ無効
背景primaryprimary-darkprimary-darkermuted
テキストwhitewhitewhitemuted-fg
ボーダーnonenonenonemuted-border
シャドウsmmdnonenone

スクリプト

スクリプト用途
generate-tokens.cjsJSON トークン設定から CSS を生成
validate-tokens.cjsコード内のハードコード値を確認
search-slides.pyBM25 検索+コンテキストに応じた推奨
slide-token-validator.pyスライド HTML のトークン準拠を検証
fetch-background.pyPexels/Unsplash から画像を取得

テンプレート

テンプレート用途
design-tokens-starter.json3 層構造を備えたスターター JSON

連携

brand との連携: ブランドカラー/タイポグラフィからプリミティブを抽出
ui-styling との連携: コンポーネントトークン → Tailwind 設定

スキルの依存関係: brand、ui-styling
主要エージェント: ui-ux-designer、frontend-developer

スライドシステム

デザイントークン+Chart.js+コンテキストに応じた意思決定システムを使用した、ブランド準拠のプレゼンテーションです。

信頼できる情報源
ファイル用途
docs/brand-guidelines.mdブランドアイデンティティ、語調、色
assets/design-tokens.jsonトークン定義(プリミティブ→セマンティック→コンポーネント)
assets/design-tokens.cssCSS 変数(スライドでインポート)
assets/css/slide-animations.cssCSS アニメーションライブラリ
スライド検索(BM25)
# Basic search (auto-detect domain)
python scripts/search-slides.py "investor pitch"

# Domain-specific search
python scripts/search-slides.py "problem agitation" -d copy
python scripts/search-slides.py "revenue growth" -d chart

# Contextual search (Premium System)
python scripts/search-slides.py "problem slide" --context --position 2 --total 9
python scripts/search-slides.py "cta" --context --position 9 --prev-emotion frustration
意思決定システムの CSV
ファイル用途
data/slide-strategies.csv15 種類のデッキ構成+感情の流れ+スパークラインのビート
data/slide-layouts.csv25 種類のレイアウト+コンポーネントバリアント+アニメーション
data/slide-layout-logic.csv目標 → レイアウト+break_pattern フラグ
data/slide-typography.csvコンテンツタイプ → タイポグラフィスケール
data/slide-color-logic.csv感情 → 色の処理
data/slide-backgrounds.csvスライドタイプ → 画像カテゴリ(Pexels/Unsplash)
data/slide-copy.csv25 種類のコピーライティング公式(PAS、AIDA、FAB)
data/slide-charts.csvChart.js 設定を含む 25 種類のグラフタイプ
コンテキストに応じた意思決定の流れ
1. Parse goal/context
        ↓
2. Search slide-strategies.csv → Get strategy + emotion beats
        ↓
3. For each slide:
   a. Query slide-layout-logic.csv → layout + break_pattern
   b. Query slide-typography.csv → type scale
   c. Query slide-color-logic.csv → color treatment
   d. Query slide-backgrounds.csv → image if needed
   e. Apply animation class from slide-animations.css
        ↓
4. Generate HTML with design tokens
        ↓
5. Validate with slide-token-validator.py
パターンの打破(Duarte Sparkline)

エンゲージメントを高めるため、プレミアムなデッキでは感情を交互に切り替えます:

"What Is" (frustration) ↔ "What Could Be" (hope)

システムは 1/3 と 2/3 の位置でパターンの切り替えを計算します。

スライドの要件

すべてのスライドで必須:

  1. assets/design-tokens.css をインポートする — 唯一の信頼できる情報源
  2. CSS 変数を使用する:var(--color-primary)、var(--slide-bg) など
  3. グラフには Chart.js を使用する(CSS のみのバーは使用しない)
  4. ナビゲーションを含める(キーボードの矢印キー、クリック、プログレスバー)
  5. コンテンツを中央揃えにする
  6. 説得/コンバージョンに重点を置く
Chart.js 連携
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.umd.min.js"></script>

<canvas id="revenueChart"></canvas>
<script>
new Chart(document.getElementById('revenueChart'), {
    type: 'line',
    data: {
        labels: ['Sep', 'Oct', 'Nov', 'Dec'],
        datasets: [{
            data: [5, 12, 28, 45],
            borderColor: '#FF6B6B',  // Use brand coral
            backgroundColor: 'rgba(255, 107, 107, 0.1)',
            fill: true,
            tension: 0.4
        }]
    }
});
</script>
トークン準拠
/* CORRECT - uses token */
background: var(--slide-bg);
color: var(--color-primary);
font-family: var(--typography-font-heading);

/* WRONG - hardcoded */
background: #0D0D0D;
color: #FF6B6B;
font-family: 'Space Grotesk';
参照実装

すべての機能を備えた動作例:

assets/designs/slides/claudekit-pitch-251223.html
コマンド
/slides:create "10-slide investor pitch for ClaudeKit Marketing"

ベストプラクティス

  1. コンポーネント内で16進数を直接使用せず、必ずトークンを参照してください
  2. セマンティックレイヤーによってテーマ(ライト/ダーク)を切り替えられます
  3. コンポーネントトークンによって、コンポーネントごとにカスタマイズできます
  4. 不透明度を調整するには、HSL形式を使用してください
  5. すべてのトークンの用途を記載してください
  6. スライドではdesign-tokens.cssをインポートし、var()のみを使用してください

コメント