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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
uto usui
January 31, 2025
Design
33
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
デザインシステムが導く 品質の「拡張」
uto usui
January 31, 2025
More Decks by uto usui
See All by uto usui
アクセシビリティ推進を続けられるようにするヒント - Accessibility Conference CHIBA 2025
uto
0
300
Other Decks in Design
See All in Design
第18回サイゼミ
lw
1
4k
Mandalyn_DT5001_FinalAssignment.pdf
lynteo
0
240
AIネイティブスタートアップにおけるプロダクト開発の新常識 / Product Development Tips in AI-Native Startups
saka2jp
2
1.3k
全員がアウトプットを出せる時代、 誰を採用する?
nishame
0
590
TUNAG BOOK 2024
stmn
PRO
0
1.6k
Connpass-Xperia_Camera_App_by_HCD.pdf
sony
1
680
Signull 団体説明資料
signull
0
680
体験負債を資産に変える組織的アプローチ
hikarutakase
0
1.5k
開閉UIのアニメーション設計
hiro0218
1
280
UI生成の鍵は要件整理 -デザインプロセスのエッセンスを プロンプト作成に取り入れよう-
abokadotyann
4
930
ISO 9241-171:2025っていうのがあってな
shosira
1
200
Storyboard Exercise: Chase Sequence
lynteo
1
320
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
830
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
870
Evolving SEO for Evolving Search Engines
ryanjones
0
230
Testing 201, or: Great Expectations
jmmastey
46
8.2k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
750
Skip the Path - Find Your Career Trail
mkilby
1
160
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
190
Building AI with AI
inesmontani
PRO
1
1.1k
How to Ace a Technical Interview
jacobian
281
24k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
210
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
440
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 !