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
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカ...
Search
did0es
October 25, 2025
Technology
2
94
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
Vue Fes Japan 2025で発表したLTの資料です。
https://vuefes.jp/2025/sponsors/cyberagent#did0es
did0es
October 25, 2025
Tweet
Share
More Decks by did0es
See All by did0es
歴代のWeb Speed Hackathonの出題から考えるデグレしないパフォーマンス改善
shuta13
7
700
なぜクラウドサービスで Web コンソールを提供するのか
shuta13
4
2.4k
5分でわかるPreactのVDOMで作るWebエディタ
shuta13
0
200
TailwindCSSでUIライブラリを作る際のハマりどころ
shuta13
0
700
codemodとうまく付き合うには
shuta13
0
2.6k
プライベートクラウドのコンソール画面をNext.jsのApp Routerでフルリプレイスした話
shuta13
4
950
CyberAgent Developer Conference(CADC) 2023 LP開発の舞台裏
shuta13
0
260
Turborepo Code Generationによる、サイバーエージェントグループのフロントエンド開発の効率化
shuta13
4
2.6k
CADC 2023 LPにおけるライブ配信の裏側 | Momento Meetup #3
shuta13
0
170
Other Decks in Technology
See All in Technology
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
140
映像エッジAIにおけるNode-RED活用事例
emirmatsui
0
130
NLPコロキウム20251022_超効率化への挑戦: LLM 1bit量子化のロードマップ
yumaichikawa
1
180
ソースを読むプロセスの例
sat
PRO
15
9.7k
生成AIを安心して活用するために──「情報セキュリティガイドライン」策定とポイント
gree_tech
PRO
0
220
あなたの知らない Linuxカーネル脆弱性の世界
recruitengineers
PRO
3
130
[2025年10月版] Databricks Data + AI Boot Camp
databricksjapan
1
240
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
440
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
160
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
1.7k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
81k
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
110
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Music & Morning Musume
bryan
46
6.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
880
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
Being A Developer After 40
akosma
91
590k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
The Language of Interfaces
destraynor
162
25k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Transcript
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログの リリースサイクルを高速化する 2025/10/25 @ Vue Fes Japan 2025
did0es
自己紹介 did0es(🗣 ディドス) - Hirai shuta 株式会社サイバーエージェント グループIT推進本部 CIU Software
Engineer(Web FrontEnd) Next Experts(TypeScript) Lead organizer for FEC Tokyo, Meguro.es X: https://x.com/did0es GitHub: https://github.com/shuta13 For more: https://did0.es
大規模モノレポでViteを活用し UIカタログのリリースを 高速化してきたお話をします
1.モノレポの概要 2.Cycloud UIについて 3.Cycloud UIの裏側 4.Vite + Project Referencesの注意点 5.比較・まとめ
モノレポの概要
SDK Client • CIUのWebフロントエンド向けの SDK • 50個以上のパッケージ 例: Cycloud UI
UIライブラリ Cycloud Use クライアント ロジック Cycloud APIs APIクライアント Create Cycloud App ワンコマンドでWebUI 生成CLI 開発ツールの Config系 ESLint・Prettier・Jest etc…
SDK Client • CIUのWebフロントエンド向けの SDK • 50個以上のパッケージ 例: Cycloud UI
UIライブラリ Cycloud Use クライアント ロジック Cycloud APIs APIクライアント Create Cycloud App ワンコマンドでWebUI 生成CLI 開発ツールの Config系 ESLint・Prettier・Jest etc…
Cycloud UIについて
Cycloud UIとは • React + TailwindCSS製のUIライブラリ Cycloudのブランディングと Webフロントの開発効率向上のために開発 • 35個のコンポーネント
組み合わせてCycloudのWebUIを実現
Cycloud UIの構成
Cycloud UIの裏側
Vite + StorybookによるUIカタログ • 各WebUIでのWebpackによる運用を一新 サービスのコンソールごとにWebpackで Storybookを運用していた • SDKに集約しViteを使うように @storybook/react-viteで実現
TS Project Referencesによるビルド • 全てをViteやtscでビルドすると オーバーヘッドが大きい Project Referencesで依存を明示し、 要るものだけビルド(右図参照) •
GHAでビルドしてデプロイ 3〜4分程度で完了
Vite + Project Referencesの 注意点
注意点① • .storybook/main.jsに以下の記述がないとビルドがコケる Project Referencesで参照しているパッケージを追加する
注意点② • パッケージが CommonJS形式だとビルドがコケる Vite向けにtscでES Modules形式にする
比較・まとめ
Webpackやtsc個別実行との比較 計測 + Claude Codeでシミュレート ビルドステップ パターンA Vite + tsc
-b パターンB Vite + 個別tsc パターンC Webpack + tsc -b パターンD Webpack + 個別tsc 型チェック 30〜45秒 2〜3分 30〜45秒 2〜3分 Storybookの ビルド 2〜3分 2〜3分 5〜8分 5〜8分 devサーバー 起動 5〜15秒 5〜15秒 30〜60秒 30〜60秒 ホットリロード 0.1〜0.5秒 0.1〜0.5秒 1〜3秒 1〜3秒
まとめ • ViteでUIカタログを高速に反映できた Webpackの1/2の時間でデプロイ CycloudのWebUIの設計を効率化 • Project Referencesでさらに高速に tsc個別実行の1/6の時間で型チェック・ビルド トータル3〜4分でStorybookをデプロイ
アンケートへのご協力のお願い https://forms.gle/eLSMDaDnJS8bS2XZA 2〜3分ほどで回答出来ます!
予め準備してあるWebアプリケーションのパフォーマ ンス改善・高速化を競い合うハッカソン。 主にWeb技術(フロントエンドおよびNode.js)に関 するチューニングを出題いたします。 # 開催日 2026年3月20日(金・祝) - 21日(土) connpassで参加受付中
# 題材 架空のSNSアプリ # その他 社会人 / 学生どなたでも参加可能 Web Speed Hackathon 2026 【3月開催】 概要 #WebSpeedHackathon で検索🔎
選考サイトでは選考フローの解説やサイバーエージェントの社員紹介等コンテンツも充実。 エントリーをお待ちしております! 【27卒学生向け】採用選考エントリー受付開始
ありがとうございました