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
UIコンポーネントライブラリをうまく使うためにできること / components-with-...
Search
mottox2
September 21, 2023
Technology
7
3.7k
UIコンポーネントライブラリをうまく使うためにできること / components-with-designer
mottox2
September 21, 2023
Tweet
Share
More Decks by mottox2
See All by mottox2
もう一歩進めたい OG画像の動的生成
mottox2
7
1.4k
なぜコピペで使うコンポーネント集を利用するのか?
mottox2
8
6.7k
Figma Plugin公開までの壁を乗り越える
mottox2
2
2.6k
Puppeteerでつくる画像と動画 / images and videos made with puppeteer
mottox2
0
610
手触りのよいウェブを考える / better-mobile-web
mottox2
3
1.7k
組織と権限とSlack App / slack-app-with-roles
mottox2
1
580
SSRを避けるためにやっていること / ssr-alternative
mottox2
9
3.1k
JSXでつくる宣言的UIなプレゼンテーション / jsx-presentation
mottox2
7
32k
プレイヤー目線の技術ブランディング / personal branding
mottox2
4
4.1k
Other Decks in Technology
See All in Technology
俺とVSCode Python Debugger Extension
sat
PRO
1
140
Grafana エコシステムの活用事例 on ABEMA
tetsuya28
5
710
안드로이드 기술 이력서의 최소 조건
pluu
0
780
Oracle Cloud Infrastructure:2024年10月度サービス・アップデート
oracle4engineer
PRO
0
140
今日から始める技術的負債の解消
leveragestech
3
440
【㈱アイモバイル】エンジニア向け会社説明資料
imobile
0
480
ラブグラフ紹介資料 〜プロダクト解体新書〜 / Lovegraph Product Deck
lovegraph
0
14k
塩野義製薬様のAWS統合管理戦略:Organizations設計と運用の具体例
tkikuchi
0
300
全社を巻き込んだ業務オペレーション改善と、それは事業成長に貢献しているのか?を実感した話
marroooon
0
130
40代後半で開発エンジニアからクラウドインフラエンジニアにキャリアチェンジし、生き残れる自信がようやく持てた話
iwamot
8
8k
Vue.js、Nuxtの機能を使い、 大量のコピペコードをリファクタリングする
igayamaguchi
3
800
From naive to advanced RAG: the complete guide
glaforge
0
620
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
31
1.7k
No one is an island. Learnings from fostering a developers community.
thoeni
19
2.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
Six Lessons from altMBA
skipperchong
26
3.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.6k
The Cost Of JavaScript in 2023
addyosmani
43
5.9k
Designing on Purpose - Digital PM Summit 2013
jponch
114
6.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
Designing the Hi-DPI Web
ddemaree
280
34k
Transcript
UIコンポーネントライブラリを うまく使うためにできること フロントエンドの開発生産性〜Online Conference〜 @mottox2
@mottox2 たまにウェブフロントエンドエンジニアなUIデザイナー
UIデザイナーとフロントエンドエンジニア間での見方の違い 認識をあわせることで得られるメリットを考える 今日は の事例を話します
本LTの前提 Not for meに感じる人もいると思います 小規模チーム シングルプロダクト C向けアプリ マルチプロダクト B向けアプリ 大規模
そもそもコンポーネントライブラリを使っている? 1. 使わず、 アプリ内に直接書いている 2. 使っている 3. 社内共通ライブラリを作って使っている
UIライブラリの導入 B向けとか、 世界観を要求されない場面で有i W 少ないインプットでアウトプットを得た` W 統一感・アクセシビリティがある程度担保されF ありものを入れるだけで満足してないr
デザイナーの視点も反映して導入すると生産性に効く? Web3感を出したい!みたいな
避けたい未来 8 技術的な都合だけで進めてしまv 8 デザイナーや偉い人からの 「なんかダサい」 といった 理由でフロントエンドをリプレースする未e 8「なんかダサいね」 と言いつつ、
やる気不十分で開発・ デザインし続ける未e 8 初速がよくても短期間でこうなると生産性は高くない
うまく使うためのポイント 1. UIライブラリ自体の選定 2. ライブラリのテーマ設定 3. デザインファイルへの反映
UIライブラリ自体の選定 依存するライブラリ、 コンポーネントの充実度、 スターや利用者数を見て採用を判断しよう UI自体のトンマナが古くないか、 足りないコン ポーネントをデザインしやすいかが気になる エンジニア デザイナー
ライブラリのテーマ設定 導入してコンポーネントが使えたらそれで満足 そもまま使うと微妙な箇所があって直したい けどどこをいじれるかわからない エンジニア デザイナー サービスロゴの色やグラデをボタンで使いたい、日本語フォントが入ると見た目が悪い
デザインファイルへの反映 導入したテーマに沿った配色をしてほしい、 4pxグリッドだと実装しやすいなー どこをいじれるかわからない、 もやもやする 何をデザインに反映すればいいかわからない エンジニア デザイナー
実例 入れたものではなく、 入れる際にエンジニアデザイナーの視点で それなりに満足できる妥協点を目指すことが重要と考えています。
shadcn-uiを選定 y ニュートラルなUIがよY y 足りないコンポーネントをデザインしやすい 外部UIコンポーネントを追加してもなじませやすY y 多分一から作っても似たような見た目になりそ$ y コンポーネントの種類は足りないけど目をつぶっ'
y(正確にはコンポーネントライブラリではない)
shadcn-uiを選定 default new-york
shadcn-uiのテーマ設定 p 設定箇所を確認し、 newyorkというテーマを利9 p newyorkはdefaultと比べてスペーシングとフォントサイ ズが小さめに作られている。
アイコンはMaterial Symbolsを利用 標準ではRadix Iconsだったが、 小さなサイズ用なのに加 えて種類が少なくて運用が大変そP VariableFontとして提供されているMaterial Symbols
に置き換え ( 種類も多く、 Figmaプラグインもよい
アイコンはMaterial Symbolsを利用 weight: 100 weight: 300 weight: 600 filled, weight:
300 t VariableFontなのでアプリにあったものを選べる
微妙な箇所を修正 B 日本語を入れると違和感の出る箇所を修' B 行間や太さに違和感が出る箇所の対 B スペーシングに違和感のある場所の対 B 割れ窓を塞ぎたい
デザインファイルへの反映 shadcn/uiが利用している CSS VariablesをFigmaの デザインファイルに登録。 デザインする際に、 同じ値を 使う。
導入してみた感想 e コスパよくそれなりに満足のいくコンポーネント基盤が 出来て良さそう、 他のデザインに時間を使えてい e それなりに長期間耐えうるものになりそうな予I e ライブラリに学習コストをかける必要がある。
おわりに i 単純に効率が良く進めるだけでなく納得感を持てる8 i コンポーネントライブラリだけでこれだけの観点があe i デザイナーの視点も入れることで質が得られる8 i デザイナーのやる気が高まる→仕事の質があがる→ アプリに対する愛着が湧く→生産性があがる
Thank you!