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.9k
UIコンポーネントライブラリをうまく使うためにできること / components-with-designer
mottox2
September 21, 2023
Tweet
Share
More Decks by mottox2
See All by mottox2
もう一歩進めたい OG画像の動的生成
mottox2
7
2k
なぜコピペで使うコンポーネント集を利用するのか?
mottox2
8
7.3k
Figma Plugin公開までの壁を乗り越える
mottox2
3
3.7k
Puppeteerでつくる画像と動画 / images and videos made with puppeteer
mottox2
0
720
手触りのよいウェブを考える / better-mobile-web
mottox2
3
1.9k
組織と権限とSlack App / slack-app-with-roles
mottox2
1
680
SSRを避けるためにやっていること / ssr-alternative
mottox2
9
3.2k
JSXでつくる宣言的UIなプレゼンテーション / jsx-presentation
mottox2
7
33k
プレイヤー目線の技術ブランディング / personal branding
mottox2
4
4.6k
Other Decks in Technology
See All in Technology
エンジニアに定年なし! AI時代にキャリアをReboot — 学び続けて未来を創る
junjikoide
0
180
ステートレスなLLMでステートフルなAI agentを作る - YAPC::Fukuoka 2025
gfx
0
210
Proxmox × HCP Terraformで始めるお家プライベートクラウド
lamaglama39
1
180
日々のSlackアラート確認運用をCustom Chat Modesで楽にした話 / 日々のSlackアラート確認運用をCustom Chat Modesで楽にした話
imamotohikaru
0
430
クレジットカードの不正を防止する技術
yutadayo
13
6.4k
Digitization部 紹介資料
sansan33
PRO
1
5.9k
エンジニア採用と 技術広報の取り組みと注力点/techpr1112
nishiuma
0
130
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
1.3k
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
3
540
ユーザーストーリー x AI / User Stories x AI
oomatomo
0
170
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
3
960
Flutterで実装する実践的な攻撃対策とセキュリティ向上
fujikinaga
1
320
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
24
1.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
Typedesign – Prime Four
hannesfritz
42
2.9k
Context Engineering - Making Every Token Count
addyosmani
9
380
Docker and Python
trallard
46
3.6k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
310
Balancing Empowerment & Direction
lara
5
740
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!