Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
デザインシステムが導く 品質の「拡張」
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
uto usui
January 31, 2025
Design
0
21
デザインシステムが導く 品質の「拡張」
uto usui
January 31, 2025
Tweet
Share
More Decks by uto usui
See All by uto usui
アクセシビリティ推進を続けられるようにするヒント - Accessibility Conference CHIBA 2025
uto
0
230
Other Decks in Design
See All in Design
Vibe Coding デザインシステム
poteboy
3
1.8k
Franks Myth
gfht1
2
450
Treasure_Hunting
solmetts
0
330
decksh object reference
ajstarks
2
1.5k
プロダクトデザイナーに学ぶ、『見る気が起きる』ダッシュボードの作り方 / Creating Engaging Dashboards: Lessons from Product Designers
yamamotoyuta
2
710
公開スライド)熊本市様-電子申請中級編
garyuten
0
1.1k
第18回サイゼミ
lw
1
3.6k
OJTで学んだ 「心を動かす」ファシリテーション
saki822
1
280
AI時代、デザイナーの価値はどこに?
tararira
1
940
つくり方を変えていく | change-how-we-build
mottox2
2
850
体験負債を資産に変える組織的アプローチ
hikarutakase
0
980
Storyboard Assignment: Storyboard from Comic Strip
lynteo
3
240
Featured
See All Featured
Visualization
eitanlees
150
17k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
160
A better future with KSS
kneath
240
18k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
800
Fireside Chat
paigeccino
42
3.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Exploring anti-patterns in Rails
aemeredith
2
300
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
110
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
680
The Language of Interfaces
destraynor
162
26k
The Curse of the Amulet
leimatthew05
1
11k
Transcript
デザインシステムが導く 品質の「拡張」
note inc. ⾃⼰紹介 ⾅井優⽃ / UX エンジニア デザインスタジオでキャリアをスタートし、Condé NastにてWIREDやGQなどのウェブメディアのフロントエンド 開発およびクリエイティブディレクションに従事。2021年5⽉にnoteにフロントエンドエンジニアとして⼊社。⼀
貫したブランド体験の実現と、開発⽣産性向上を⽬指すため、UXエンジニアに転⾝。デザイナーとエンジニアの 協業を促進し課題を解決する橋渡し役として、デザインシステム構築やアクセシビリティ向上を中⼼に、プロダク ト全体の品質向上のため活動中。 最近、⽣成AIの⾳楽で遊んでいます。 2
note inc. 3
⽬次 note inc. ‧ UXエンジニアのしごと ‧ デザインシステム ‧ デザイントークン ‧ コンポーネントライブラリ ‧ まとめ 4
note inc. UX エンジニアってなに? 5
note inc. UXエンジニアとは.. “UXエンジニアは、デザインと開発を組み合わせることで、 ユーザーフレンドリーなデジタル製品を設計‧開発します。” 6
note inc. UXエンジニアとは.. “UXエンジニアは、デザインと開発を組み合わせることで、 ユーザーフレンドリーなデジタル製品を設計‧開発します。” デザインと開発の橋渡し役として協業を促進、 開発⽣産性の向上とブランド体験の⼀貫性を確保し、プロダクトの体験(品質)を向上(拡張)させる。 7
note inc. (noteの)UXエンジニア 8
note inc. 4年前くらいのnote 9 • コンポーネントがない • デザインツールが定まっていない • マスターデータがない
• スクショでのやり取り • ⾊がたくさんある • 表記ゆれ • Nuxt v2 → 3 無理ぽ • デザイナーがマークアップしたり しなかったり 素早く実装するために、仕組み化は先送り 実装コスト重い...⼀貫性のない体験...
note inc. つまり、ルールがない 10
note inc. ルールをつくろう! 11
note inc. (noteの)UXエンジニア 12 デザインがどうあるべきか? を実装する‧みんなが実装できる環境を作る ルール(UI原則‧らしさ)を適⽤した ツールを作る
note inc. プロダクトの品質を「拡張」 13
note inc. UXエンジニアのしごと 14 • デザインシステム ◦ デザイントークン ◦ コンポーネント
◦ ドキュメント • アクセシビリティ向上 • figma連携‧アセットエクスポート • プラグイン開発(イラストシステム • 本番環境のスナップショット • テキスト校正ツール • コミュニケーション ◦ プロダクトキャッチアップ ◦ UI雑談カフェ ◦ ワークショップ • いろいろ負債解消 • ……
note inc. 15 デザインシステム
note inc. 16 https://uxdesign.cc/everything-you-need-to-know-about-design -systems-54b109851969 デザインシステムは成果物ではなく、成果物 の集合
note inc. デザイントークン コンポーネントライブラリ 17
note inc. デザイントークン 18
note inc. デザイントークン _構成 プリミティブなトークンで、コ ンテキストに依存しない、値そのも のを表す命名。 UIからこの値は参照しない。 red-500, blue-700 19
コンテキストや役割や機能をもち、 デザインの意図や目的を反映した 命名。Global Tokenから参照す る。 UIから参照され、テーマ機能を包 含する。 **-primary **-success 特 定 コンポーネントのローカルトーク ン。 コンポーネントに依 存し、global、alias どちらも参照する。 article-**, header-** Global Token Alias Token Component Token
note inc. デザイントークン _導⼊過程 1. カラーパレット(global token)定義 2. alias token定義 3.
コントラスト(アクセシビリティ)検討 4. json 定義 5. 各プラットフォームに変換(Style Dictionary) 6. 段階的実装 7. linter開発 8. 移⾏完了 9. Tailwind CSSの推奨 20
note inc. デザイントークン _成果 21 • デザインと実装で同じ⾊が参照できる • あらゆる環境で同じカラーパレット ◦ web,
app, コムデ • コントラスト確保 • 機能が明確だからまよわない • Tailwind CSS の価値が⾼まる • ちゃんとした英語表現
note inc. デザイントークン _まとめ記事 22
note inc. コンポーネントライブラリ 23
note inc. コンポーネント _構成(React) 構 造 (JSX)とビジュアルスタ イル(Tailwind CSS)を定義し たコンポーネントの本体。 storybookでpropsを
閲 覧 でき る。 24 アクセシビリティを 中 心 としたコン ポーネントの振る舞いを定 義した hooks。 キーボード操 作の処 理、フォーカ ス管理、適切なARIA属性などを適 切にコントロールする。 状態を管理するためのuseState, useContextをふくむhooks。 Presentation Behavior State
note inc. コンポーネント _開発 hygen 25 hygenで雛形(ejs)からコンポーネントを ⽣成するしくみ 対話形式で開発に必要なファイルを⼀括して 作ってくれる これをもとにAIにFigmaのスクショを⾒せたり
https://github.com/jondot/hygen
note inc. コンポーネント _テスト 固有のpropsをすべてStoryとし て書いてカタログ化する。 静 的 なアクセシビリティテス ト、インタラクションテスト、 対
応 するFigmaコンポーネント へのリンク。 i18n切り替え。 26 Storybookの資産を流用(render) する。 Storybookでは見た目の期待値、 単 体テストでは取りうる値が期 待 通りかチェック。 デザインの変更履歴をアーカイブする。 意 図 しないビジュアルリグレッションを 検出。 PRごとにStorybook環境をホストする。 コミュニケーションのハブ・Figmaとの連 携にも。 Storybook 単体テスト Chromatic
note inc. コンポーネント _AI Story, test(a11y)の⽣成 27 IDE上でStoryとStoryを利⽤したtestを⽣成 gpt-4oでいい感じの出⼒ 追加で動的なアクセシビリティテストも依頼
note inc. コンポーネント _ドキュメント MDXでStorybookに書き込む • コンポーネントの使い⽅ • アクセシビリティ対応 • UIの基本的な考え⽅
• Good/bad集 • サンプルコード
note inc. コンポーネント _成果 29 • デザインをコードにおこさなくていい • メンテされてるStorybookいいね◎ • Tailwind
セットアップすると新しいアプ リ作れる • デザインと開発の共通⾔語に • めっちゃアクセシブル • 新規事業への貢献
note inc. まとめ 30
note inc. (noteの)UXエンジニア 31 デザインがどうあるべきか? を実装する‧みんなが実装できる環境を作る ルール(UI原則‧らしさ)を適⽤した ツールを作る
note inc. 溶ける品質‧説く品質 32
note inc. 意識せず品質を実装できる 33
note inc. 意識せず品質を実装できる + 品質も意識 34
note inc. みんながよい品質を 実践‧理解 35
note inc. プロダクトの品質を「拡張」 36
デザインシステムが導く 品質の「拡張」
Thank you !