2026/05/28
noshに飽きて食事が迷走しています。 ロケットナウと長谷川あかりを信じてます。
OriCubeというプロダクトに、 デザインシステムを導入しました。
ということを1年前くらいに思って開発が止まってました。
Figma for デザインシステムという書籍を参考に作成しました。
どこまでをデザインシステムと呼ぶかは組織によって変わるそう
ライティングガイド、実装コード、ブランドガイドライン、イラストレーション、アニメーション、...。
デザイントークン
まずは最も基本的な色について整理していく
揺れがあったが 一番使われてた#324FB1に統一
#324FB1
Color Shades Figmaプラグインでいい感じに作成。
コントラスト(文字色と背景色の明るさの差)を一覧で見る。
WCAGの達成基準(4.5:1以上)に準拠する組み合わせを選ぶ。
blue/30のように名前をつけることでおおよその色を想像できる。
blue/30
text/primaryのようにすると色の役割も表現できるため、 迷わずデザインを進めることができる。
text/primary
組み合わせた場合のコントラスト比を考慮しつつ定義
文字の読みやすさには、視認性、判読性、可読性の3つの軸がある。
OriCubeでは文章がほとんどなくタイトルなどに文字が使われることから、 視認性、判読性を向上させるフォントを選定する。
カラーと同様に、組み合わせと役割を定義した。
影、角丸、余白なども同様に 階調を作り一貫性が出るように定義
今使われているコンポーネントを洗い出して、あたりをつけていく。
汎用的なボタンコンポーネントを作成した。
全ての状態を定義すると上記のようになるが、 一個一個作るのは大変なので...
Figmaでも汎用性の高いコンポーネントを作ることができる
曖昧だったルールを明示的に記述。
Variablesに登録したデザイントークンはプラグインでcss変換できる
(CIがんばれば自動更新とかもできるっぽい、やってみたい)
Storybook上に必要なパターンを全ておこす
Figmaのコンポーネントを作り込んでおくと結構な精度で再現できた。
不要なhtmlやcssが生成される → コーディング上のルールを整備する必要がありそう
Figmaに定義している以上のものを生成する (hover時のアニメーション、フォーカスインジゲーターなど) → デザイン上の暗黙的なルールを渡す必要がありそう
勝手に作ってみたら、デザインも開発もぐっと楽になった!
コメント