カラー

すべてのBoardUIコンポーネントの基盤となる、用途に応じたカラートークンです。前景、文字、背景、境界線の役割を持ち、Figmaの変数と同じ名前で定義されています。

システムがどのように機能するか

色は2つの層で層付けられます。 プリミティブ 生パレット - テールウィンドのデフォルトOKLCHスケールとFigmaで調整されたオーバーライドの便利な styles/theme.css. セマンティックトークン 上に座って、それらの原始者を参照してください インフォメーション - どのような色が、それが見えるものではない。 --color-text-secondary says “supporting copy”, not “neutral 500”.

コンポーネントは、セマンティックレイヤーのみを消費します。単一の間接は、システムが保守可能にするものです。プリミティブを解除するか、セマンティックトークンをリマップするか、コンポーネントのアップデートを一度に再マッピングします。コンポーネントファイルは変更しません。また、ダークモードへのパスです。 .dark theme.css のブロックは、同じトークンを暗値で再配置するので、コンポーネントは必要なくありません。 dark: プレフィックス。

トークン名は Figma 変数パスをミラーリングします(text/primary → --color-text-primary)、設計仕様は、検索テーブルなしでコードに変換します。クラス名で2倍のプレフィックスを注意してください - text-text-primary, bg-background-primary-default - 最初のセグメントは、Tailwindユーティリティで、残りの部分はトークンのフルセマンティックパスです。

1つのトークンシステム、2つのテーマ

追加 .dark ルート要素に。BoardUI は同じ意味のトークンをリマップします。そのため、すべてのコンポーネントが変更されます。

01

各テーマのマップ

軽い値を保って下さい :root ダークバリュー .dark.

02

semantic色を使用して下さい

のようなトークンを使う bg-background-primary-default、未加工色ではないです。

03

集中管理

コンポーネントレベルの回避 dark: オーバーライドするので、変更は予測可能にとどまります。

永続性と斬新な初期化スクリプトが含まれています。

インストールガイドを見る

1つのアクセント、すべてのCTA

すべてのインタラクティブな表面 - プライマリボタン勾配、チェックボックス、ラジオ、スイッチ、スライダー、タブ、選択したサイドバー項目、フォーカスリング - シングルから読みます --color-accent-50…950 デフォルトは青色です。 下の任意の色合い(または完全にカスタムカラー)を選択し、このページのリティントライブを見てください。 チャートとステータスの色は意図的に置きます。

カスタムカラーは --color-accent-500 にそのまま配置されます。プライマリボタンのグラデーションの始点であり、フォーカスリングにも使われる段階です。残りの 10 段階はこの色を中心に生成されます。ボタンはこの色の上に白い文字を表示するため、文字が読める程度に暗い色を選んでください。

持ち帰る: eleven-variable オーバーライドをコピーし、テーマ.css のインポート後に貼り付けます。

フォアグラウンド

アイコンは、テキストを実行していない表面の上に描かれたすべてのもの、およびinverse/on-colorのフォアグラウンドを埋めます。

トークンテールウィンドクラスライトライトダーク
--color-foreground-fulltext-foreground-fullwhiteneutral-700
--color-foreground-icon-primarytext-foreground-icon-primaryneutral-950neutral-50
--color-foreground-icon-hovertext-foreground-icon-hoverblackwhite
--color-foreground-icon-secondarytext-foreground-icon-secondaryneutral-500neutral-500
--color-foreground-icon-tertiarytext-foreground-icon-tertiaryneutral-400neutral-600
--color-foreground-icon-quaternarytext-foreground-icon-quaternaryneutral-300neutral-700
--color-foreground-icon-errortext-foreground-icon-errorred-600red-400
--color-foreground-icon-disabledtext-foreground-icon-disabledneutral-300neutral-800
--color-foreground-disabledtext-foreground-disabledneutral-400neutral-700
--color-foreground-disabled-dangertext-foreground-disabled-dangerred-300red-400
--color-input-disabled-foregroundtext-input-disabled-foregroundneutral-300neutral-600
--color-icon-button-disabled-foregroundtext-icon-button-disabled-foregroundneutral-300neutral-500

テキスト

型階層:見出しとキー値のプライマリ、コピーをサポートするためのセカンダリ、ヒントのtertiary、および無効なエラー状態。

トークンテールウィンドクラスライトライトダーク
--color-text-primarytext-text-primaryneutral-950neutral-50
--color-text-secondarytext-text-secondaryneutral-500neutral-500
--color-text-tertiarytext-text-tertiaryneutral-400neutral-600
--color-text-disabledtext-text-disabledneutral-300neutral-800
--color-text-disabled-dangertext-text-disabled-dangerred-300red-300
--color-text-error-primarytext-text-error-primaryred-500red-400
--color-input-disabled-texttext-input-disabled-textneutral-300neutral-500 / 40%
--color-text-placeholderplaceholder:text-text-placeholderneutral-400neutral-400
--color-text-whitetext-text-whitewhitewhite
--color-text-error-placeholdertext-text-error-placeholderred-400red-400

背景

表面は塗りつぶします。フルは外側のキャンバスです。プライマリ、セカンド、およびtertiaryは、進行方向にネストされた表面とその相互作用状態を記述します。

トークンテールウィンドクラスライトライトダーク
--color-background-fullbg-background-fullwhiteneutral-925 (#121212)
--color-background-primary-defaultbg-background-primary-defaultwhiteneutral-800
--color-background-inner-defaultbg-background-inner-defaultwhiteneutral-800 / 60%
--color-background-primary-hoverbg-background-primary-hoverneutral-100neutral-700 / 60%
--color-background-primary-activebg-background-primary-activeneutral-200neutral-800
--color-background-primary-disabledbg-background-primary-disabledneutral-100neutral-800
--color-input-disabled-backgroundbg-input-disabled-backgroundneutral-100neutral-800 / 30%
--color-background-secondary-defaultbg-background-secondary-defaultneutral-100neutral-900
--color-background-secondary-hoverbg-background-secondary-hoverneutral-200neutral-800
--color-background-tertiary-defaultbg-background-tertiary-defaultneutral-200neutral-800
--color-background-tertiary-hoverbg-background-tertiary-hoverneutral-300neutral-700
--color-background-tertiary-errorbg-background-tertiary-errorred-100red-950 / 60%
--color-avatar-neutral-backgroundbg-avatar-neutral-backgroundneutral-300background/primary/default
--color-background-quaternary-defaultbg-background-quaternary-defaultneutral-300neutral-300
--color-background-quaternary-hoverbg-background-quaternary-hoverneutral-400neutral-400
--color-background-quaternary-errorbg-background-quaternary-errorred-200red-200
--color-notification-center-backgroundbg-notification-center-backgroundwhiteneutral-900
--color-segmented-control-backgroundbg-segmented-control-backgroundneutral-100neutral-925 (#121212)
--color-theme-toggle-sidebar-backgroundbg-theme-toggle-sidebar-backgroundneutral-200neutral-800
--color-theme-toggle-sidebar-selected-backgroundbg-theme-toggle-sidebar-selected-backgroundwhiteneutral-700

ボーダー

ヘアラインとフォーカスリング。 ボタンの境界線は、ホバーとアクティブを介して暗くなり、フォーカスリングは、シングルブルーのアクセントです。

トークンテールウィンドクラスライトライトダーク
--color-border-button-defaultborder-border-button-defaultneutral-200neutral-700
--color-border-button-hoverborder-border-button-hoverneutral-300neutral-500
--color-border-button-activeborder-border-button-activeneutral-400neutral-600
--color-border-button-whiteborder-border-button-whitewhitezinc-800
--color-border-checkbox-defaultborder-border-checkbox-defaultneutral-300neutral-700
--color-border-checkbox-hoverborder-border-checkbox-hoverneutral-400neutral-500
--color-border-checkbox-activeborder-border-checkbox-activeneutral-400neutral-500
--color-border-component-detail-containerborder-border-component-detail-containerneutral-200neutral-800
--color-border-ai-profile-cardborder-border-ai-profile-cardneutral-200neutral-800
--color-border-tableborder-border-tableneutral-200neutral-800
--color-border-button-groupborder-border-button-groupneutral-200neutral-600 / 60%
--color-border-sidebar-profile-hoverborder-border-sidebar-profile-hoverneutral-300neutral-600
--color-separator-borderborder-separator-borderneutral-200neutral-800
--color-separator-border-strongborder-separator-border-strongneutral-200neutral-700 / 60%
--color-border-focus-ringring-border-focus-ringblue-500blue-500

グラフ

Chart colors. Track is the background bar/ring behind a series, cursor the hover outline and dashed reference line, neutral an “other”-style data slice. The numbered accents are a categorical ramp — each pairs a base fill with a one-tone-darker active used for hover emphasis (the 400 → 500 recipe every chart follows). In charts these are consumed as CSS variables (e.g. fill=“var(--color-chart-1)”) rather than classes.

トークンテールウィンドクラスライトライトダーク
--color-chart-trackbg-chart-trackneutral-200neutral-800
--color-chart-cursorbg-chart-cursorneutral-300neutral-700
--color-chart-neutralbg-chart-neutralneutral-300neutral-800
--color-chart-1bg-chart-1teal-400teal-400
--color-chart-1-activebg-chart-1-activeteal-500teal-500
--color-chart-2bg-chart-2lime-400lime-400
--color-chart-2-activebg-chart-2-activelime-500lime-500
--color-chart-3bg-chart-3pink-400pink-400
--color-chart-3-activebg-chart-3-activepink-500pink-500
--color-chart-4bg-chart-4sky-400sky-400
--color-chart-4-activebg-chart-4-activesky-500sky-500
--color-chart-5bg-chart-5purple-400purple-400
--color-chart-5-activebg-chart-5-activepurple-500purple-500
--color-chart-6bg-chart-6blue-400blue-400
--color-chart-6-activebg-chart-6-activeblue-500blue-500
--color-chart-7bg-chart-7emerald-400emerald-400
--color-chart-7-activebg-chart-7-activeemerald-500emerald-500
--color-chart-8bg-chart-8yellow-400yellow-400
--color-chart-8-activebg-chart-8-activeyellow-500yellow-500
--color-chart-agents-barbg-chart-agents-barpurple-300purple-500
--color-chart-agents-bar-activebg-chart-agents-bar-activepurple-400purple-600

ステート

テーマを横断して安定し続けるセマンティックなフィードバックカラー。

トークンテールウィンドクラスライトライトダーク
--color-state-success-texttext-state-success-textlime-800lime-800
--color-state-success-basebg-state-success-baselime-200lime-200
--color-button-ghost-backgroundbg-button-ghost-backgroundblue-100blue-900
--color-button-ghost-hoverbg-button-ghost-hoverblue-200blue-800
--color-button-ghost-activebg-button-ghost-activeblue-300blue-700
--color-button-ghost-foregroundtext-button-ghost-foregroundblue-700blue-300
--color-notification-information-backgroundbg-notification-information-backgroundblue-100blue-800 / 50%
--color-notification-success-backgroundbg-notification-success-backgroundlime-100lime-800 / 50%
--color-notification-error-backgroundbg-notification-error-backgroundrose-100rose-800 / 50%
--color-badge-neutral-backgroundbg-badge-neutral-backgroundneutral-200neutral-800
--color-team-menu-count-backgroundbg-team-menu-count-backgroundneutral-200neutral-700
--color-team-menu-count-foregroundtext-team-menu-count-foregroundneutral-500neutral-400
--color-tab-count-selected-backgroundbg-tab-count-selected-backgroundblue-100blue-800 / 60%
--color-status-lime-backgroundbg-status-lime-backgroundlime-200lime-950 / 60%
--color-status-lime-texttext-status-lime-textlime-800lime-500
--color-status-yellow-backgroundbg-status-yellow-backgroundyellow-200yellow-950 / 60%
--color-status-yellow-texttext-status-yellow-textyellow-800yellow-500
--color-status-rose-backgroundbg-status-rose-backgroundrose-200rose-950 / 60%
--color-status-rose-texttext-status-rose-textrose-800rose-500
--color-status-cyan-backgroundbg-status-cyan-backgroundcyan-200cyan-950 / 60%
--color-status-cyan-texttext-status-cyan-textcyan-800cyan-400
--color-status-blue-backgroundbg-status-blue-backgroundblue-200blue-950 / 60%
--color-status-blue-texttext-status-blue-textblue-800blue-300
--color-status-purple-backgroundbg-status-purple-backgroundpurple-100purple-900 / 50%
--color-status-purple-texttext-status-purple-textpurple-600purple-300
--color-status-dot-green-halobg-status-dot-green-halogreen-100green-800 / 40%
--color-status-dot-yellow-halobg-status-dot-yellow-haloyellow-200yellow-800 / 40%
--color-status-dot-indigo-halobg-status-dot-indigo-haloindigo-100indigo-800 / 40%