Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
デザイナーと協業しているNuxtプロジェクトを、ChromaticによるVRTでさら...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Masayuki Takahashi
May 23, 2023
Programming
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
デザイナーと協業しているNuxtプロジェクトを、ChromaticによるVRTでさらに改善した話
【Vue.js v-tokyo Meetup #17】
https://vuejs-meetup.connpass.com/event/279254/
Masayuki Takahashi
May 23, 2023
More Decks by Masayuki Takahashi
See All by Masayuki Takahashi
グローバルなコンパウンドプロダクトのためのフロントエンドアーキテクチャ設計 #MOSHTech
mozu1206
2
120
Other Decks in Programming
See All in Programming
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
170
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
120
APNsからLive Activityを開始する話
yumnumm
0
170
mrbgem 三角測量 開発
ogom
0
240
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
16k
Domain-Driven Transformation
hschwentner
2
2.3k
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
390
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
590
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
140
ChromeでローカルLLM
ryu1013
0
130
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Automating Front-end Workflow
addyosmani
1369
210k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
410
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Between Models and Reality
mayunak
4
490
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Typedesign – Prime Four
hannesfritz
42
3.2k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
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も今後やっていきたい。