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
370
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
Vue Fes Japan 2025で発表したLTの資料です。
https://vuefes.jp/2025/sponsors/cyberagent#did0es
did0es
October 25, 2025
More Decks by did0es
See All by did0es
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
1
820
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
3
350
うわっ...私のSwagger、古すぎ...?grpc-gateway向けのSwaggerと向き合う
shuta13
0
170
歴代のWeb Speed Hackathonの出題から考えるデグレしないパフォーマンス改善
shuta13
8
870
Reconciliationの世界
shuta13
0
25
なぜクラウドサービスで Web コンソールを提供するのか
shuta13
4
2.5k
5分でわかるPreactのVDOMで作るWebエディタ
shuta13
0
280
TailwindCSSでUIライブラリを作る際のハマりどころ
shuta13
0
810
codemodとうまく付き合うには
shuta13
0
3k
Other Decks in Technology
See All in Technology
データエンジニアリングとドメイン駆動設計
masuda220
PRO
14
2.5k
テックカンファレンス三大ステークホルダーの文化人類学 ─ 違いを認め合う関係性作り
bash0c7
1
170
AI x 開発生産性を取り巻く予算戦略と投資対効果
i35_267
7
2.9k
伝票作成AIエージェントを支える、LLMOpsとインフラの選択肢 / AICon2026_takeda
rakus_dev
0
260
「休む」重要さ
smt7174
6
1.6k
Webの技術とガジェットで子どもも大人も楽しめるワクワク体験を提供する / Qiita Tech Festa Day 2026
you
PRO
1
110
AI Coding Agent時代のcdk-nagガードレール 〜組織ルールを強制CIで守り抜く設計の挑戦〜
mhrtech
3
510
AIとハーネスで育てるトランスコンパイラ / 20260722 Yasushi Katayama
shift_evolve
PRO
3
780
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.5k
AmplifyHostingConstructからSSRフレームワークのためのホスティング設計を考察する/amplify-hosting-construct
fossamagna
1
300
「守りたい体験」を渡すだけで E2E を生成させられるようになった話
hinac0
2
1k
大 AI 時代におけるC# の事情 ~ぶっちゃけトークを交えながら~
nenonaninu
0
110
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Thoughts on Productivity
jonyablonski
76
5.3k
Side Projects
sachag
455
43k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
370
Game over? The fight for quality and originality in the time of robots
wayneb77
1
230
What's in a price? How to price your products and services
michaelherold
247
13k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
57k
Mind Mapping
helmedeiros
PRO
1
290
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
3
360
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卒学生向け】採用選考エントリー受付開始
ありがとうございました