Daiji Blog

デザインシステムにおけるカラーコンポーネントの比較

公開:

はじめに

デザインシステム1における色について説明します色はデザインシステムのほんの1要素にすぎませんがコンポーネントやガイドラインなど広範囲に影響を与える重要な要素ですここではいくつかのデザインシステムを紹介した後色の定義参照方法を比較しまとめます

本記事では色の定義参照方法に焦点を当てデザインシステム全体や色彩学ブランディングなどの詳細には触れませんまた比較を容易にするためにデザインシステムの詳細については省略します

デザインシステムの紹介

Material Design

Material DesignGoogleが開発したデザインシステムで汎用的でアクセシビリティに配慮した特徴がありますGoogleが開発することもありとくにAndroidでよく採用されています

Material Designではキーとなる色からカラーパレットを作成しSurfaceOn SurfacePrimaryなどのロールを定義しますこれらのロールはUIのどのマテリアルオブジェクトで利用するかを意識して定義されています

ロールパレット
primaryprimary40#6750A4
on-primaryprimary100#FFFFFF
surfaceneutral98#FEF7FF
on-surfaceneutral10#1D1B20

Carbon Design System

Carbon Design SystemIBM Design Languageを実装したシステムですWeb向けのライブラリの提供が豊富です

Carbon Design Systemではカラーパレットを作成しui-backgroundactive-primarytext-01のようなロールを定義しますこれらのロールはどのUIコンポーネントに利用するかを意識して定義されています

ロールパレット
ui-backgroundWhite#FFFFFF
active-primaryBlue 80#002D9C
hover-primaryBlue 60 hover#0353E9
text-01Gray 100#161616

Acorn

AcornFirefoxというブラウザで利用されるデザインシステムです

Acornでは “コンポーネントトークン → … → カラートークン → 値” といったコンポーネントトークンがコンポーネントトークンを参照する構造で定義されていますこれにより少ない労力でコンポーネントトークンを増やすことが可能です

デジタル庁デザインシステムβ

デジタル庁デザインシステムはデジタル庁をはじめとした官公庁や地方自治体などの行政機関での利用を想定した構築されたデザインシステムですサービスの使い勝手や情報の探しやすさアクセシビリティ等の向上に力を入れています

パレットを定義しUIコンポーネントからパレットを参照しますごく一部だけSuccess-1のようなセマンティックを定義しそれをUIコンポーネントから参照します

セマンティックパレット
White#FFFFFF
Blue-600#3460FB
Success-1Green-600#259D63
Error-1Red-800#EC0000

SmartHR Design System

SmartHR Design SystemSmartHRという労務ソフトで利用されるデザインシステムです

頻繁に利用する色についてはセマンティックトークンが定義されそれ以外の場合はプリミティブトークンを参照します

セマンティックトークンプリミティブトークン
MAINBLUE_100#0077C7
DANGERRED_100#E01E5A
TEXT_BLACKGREY_100#23221E
GREY_5#F8F7F6
GREY_6#F5F4F3

Human Interface Guidelines

Human Interface GuidelinesAppleが定めたデザインガイドラインですiOSなどのApple製品で利用されるためGoogleMaterial Designと比較されることが多いです

アプリ内でシステムカラー値をハードコーディングすることは避け動的システムカラーを意図通りに使用することが推奨していますこれによりプラットフォームの外観が変わった際にも一貫した体験を提供します

Spindle

SpindleAmebaのためのデザインシステムでAmeba関連のサービスで末永く効率よく運用されることを目指しています

Surface Primary — On Surface Accent Primaryのようにコントラスト比を意識した色の組み合わせやCautionなどの部分的に利用する色を定義しています

UIカラープリミティブカラー
Surface PrimaryWhite 100#FFFFFF
On Surface High EmphasisGray 100#08121A
On Surface Accent PrimaryPrimary Green 80#237B31
CautionCaution Red 100#D91C0B

定義方法の比較まとめ

デザインシステムはUIのあるアプリケーションと共に発展してきましたそのため20年程度の歴史しかなく日々開拓されています紹介したデザインシステムからも察せられるように多種多様な概念があり色の定義方法も異なります何か1つがベストというわけではなくデザインの対象や思想などにより最終的な形が異なるのです

紹介したデザインシステムは共通してUIコンポーネントが直接色を指定参照するわけではなく色を参照するための何かを参照していますこれはサービス全体で色を統一するためにはカラーコンポーネントが必要だからです

デジタル庁デザインシステムのようにパレットプリミティブを参照するタイプとMaterial DesignのようにロールセマンティックUIカラーを参照するタイプがありましたロールはCarbon Design SystemのようにどのUIコンポーネントに使うかを定義するタイプとMaterial DesignのようにUIのどのマテリアルオブジェクトに使うかを定義するタイプがありました

タイプの分類

便宜上以下のように分類します

TODO

各タイプの特徴

感想

多様なデザインシステムを調査した結果弱いロール > パレット > 強いロールの順で多い印象を受けましたカラーコンポーネントにある程度の役割を持たせつつメンテナンスコストを考慮するとこの順が妥当と感じました

色とは何か印刷などディスプレイ以外の対応色空間ブランディングなど色には考えるべきことが無数にあります色の管理参照方法だけでこれだけ奥が深いことを実感しました

文献

  1. Material Design
  2. Carbon Design System
  3. Acorn
  4. デジタル庁デザインシステムβ
  5. SmartHR Design System
  6. Human Interface Guidelines
  7. Spindle

脚注

  1. デザインシステムとはデザイン作業の効率化と一貫性を確保するためにコンポーネントパターンスタイルガイドラインなどで構成される体系的なツールですこれによりデザインの統一性が保たれ再利用性が向上します