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
デザイナーと協業しているNuxtプロジェクトを、ChromaticによるVRTでさら...
Search
Masayuki Takahashi
May 23, 2023
Programming
0
900
デザイナーと協業しているNuxtプロジェクトを、ChromaticによるVRTでさらに改善した話
【Vue.js v-tokyo Meetup #17】
https://vuejs-meetup.connpass.com/event/279254/
Masayuki Takahashi
May 23, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
SODA - FACT BOOK(JP)
sodainc
1
8.6k
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
100
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
940
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.4k
Claude Agent SDK を使ってみよう
hyshu
0
1.3k
CSC305 Lecture 09
javiergs
PRO
0
300
品質ワークショップをやってみた
nealle
0
590
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.3k
Developer Joy - The New Paradigm
hollycummins
1
330
Catch Up: Go Style Guide Update
andpad
0
240
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
290
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
380
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Designing Experiences People Love
moore
142
24k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Faster Mobile Websites
deanohume
310
31k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
610
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
We Have a Design System, Now What?
morganepeng
53
7.8k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Transcript
デザイナーと協業しているNuxtプロジェクトを、 ChromaticによるVRTでさらに改善した話 Vue.js v-tokyo Meetup #17 もず(@mozu1206)
⾃⼰紹介 職歴 ASP事業会社 - バックエンドエンジニア(2021/04 ~ 2022/03 ) 株式会社HRBrain -
デザインエンジニア(2022/04 ~ 現在) 現在の技術スタック Vue.js/Nuxt, React/Next, TypeScript, Storybook, Chromatic 趣味 コーヒー
アジェンダ - Nuxtプロジェクトについての現状 - 現状の問題点 - 解決⽅針 - 解決⽅法 -
やってみた結果 - まとめ - 今後やりたいこと
Nuxtプロジェクトについての現状 役割:サービスサイト(https://www.hrbrain.jp/) デザイン:Figma 使⽤技術:Vue.js/Nuxt, Storybook, Chromatic, Contentful デプロイ:Netlify
Nuxtプロジェクトについての現状 Vue.js / Nuxt それぞれを絶賛バージョンアップ中! ついでにコンポーネントも整理しようと思いきや、新旧3つの流派のコンポーネン トが存在していて絶望
現状の問題点 プロジェクト内のコンポーネントと、Figmaのコンポーネントで同期しきれてい ない部分がある - 同じような部品が複数存在しており、共通化されていない部分がある
現状の問題点 Figmaに登録されていない Figmaに登録されている
現状の問題点 ジョインしたてのデザイナー‧エンジニアが困る Figmaに登録されていない Figmaに登録されている
現状の問題点 • ジョインしたてのエンジニアがコンポーネント探しに時間がかかる • サイト内で微妙なデザインの差異が発⽣しやすい状態のため、統⼀感を維持 するための確認コストが余計にかかる • 無駄なコミュニケーションコストがかかる - 「ここのボタンを変えると別のここのボタンも変わるけど⼤丈夫?」
- 「そもそもこのボタンってどのボタン?」
• ジョインしたてのエンジニアがコンポーネント探しに時間がかかる • サイト内で微妙なデザインの差異が発⽣しやすい状態のため、統⼀感を維持 するための確認コストが余計にかかる • 無駄なコミュニケーションコストがかかる - 「ここのボタンを変えると別のここのボタンも変わるけど⼤丈夫?」 -
「そもそもこのボタンってどのボタン?」 現状の問題点 プロジェクトとFigmaを同期するルールを作って解決しよう! (当たり前のことを⼀つずつ)
解決⽅針 エンジニア側で定義したルールに従ってコンポーネント作成し、それをデザイ ナーが後追いでFigmaに反映する動きで合意をとった
解決⽅針 エンジニア側で定義したルールに従ってコンポーネント作成し、それをデザイ ナーが後追いでFigmaに反映する動きで合意をとった エンジニアが新規で登録した or 変更したコンポーネントを デザイナー側で検知できない新たな問題が発⽣
ChromaticのVRT(Visual Regression Test)を コンポーネントをFigmaに反映する必要があるかを判断する フラグのような使い⽅で利⽤できるのでは? 解決⽅針
Storybook - コンポーネントを独⽴して開発することを⽀援するツール Chromatic - Storybookの公開‧テスト‧議論活性化を⽀援するツール VRT(Visual Regression Test) -
変更前後のスクリーンショットを⽐較し、意図せぬ変更が⽣じていないか確認するテスト 登場⼈物の補⾜
解決⽅法 Chromatic の VRT でコードの差分を検知させ、デザイナーがその差分を確認し、 必要があればFigmaに反映する運⽤にしてみた(反映したらAcceptedにする) 反映done →
やってみた結果 • 現在使われていない古いコンポーネントの存在をお互いに認識できた • ジョインしたてのエンジニアがコンポーネントを探す⼯数を削減できた • デザイナーとコンポーネントを中⼼にした会話をしやすくなった
やってみた結果 コミュニケーションコスト削減と、 サイト全体の統⼀感を持たせやすくなった • 現在使われていない古いコンポーネントの存在をお互いに認識できた • ジョインしたてのエンジニアがコンポーネントを探す⼯数を削減できた • デザイナーとコンポーネントを中⼼にした会話をしやすくなった
やってみた結果
まとめ • エンジニア側のコンポーネントの変更をFigmaに同期させるタスクリストの 様な役割で運⽤しても、フェーズによってはワークしそう。 • Chromatic の導⼊⾃体は Storybook の公式ドキュメントにも記載があるた め、⽐較的簡単に⾏える。
• Figmaと同期させることで、様々な無駄なコストの削減に繋がる。
今後やりたいこと • 単純なUIのVRTはできるようになったが、複雑なUIやページ単位でのテスト はまだできていないので、ここのVRTも今後やっていきたい。