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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
did0es
October 25, 2025
Technology
400
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
【前編】このAPIいつ使うん?あの機能なに?V8のドキュメント、全部読んでみた
shuta13
0
86
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
1
890
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
3
390
うわっ...私のSwagger、古すぎ...?grpc-gateway向けのSwaggerと向き合う
shuta13
0
200
歴代のWeb Speed Hackathonの出題から考えるデグレしないパフォーマンス改善
shuta13
8
900
Reconciliationの世界
shuta13
0
30
なぜクラウドサービスで Web コンソールを提供するのか
shuta13
4
2.5k
5分でわかるPreactのVDOMで作るWebエディタ
shuta13
0
280
TailwindCSSでUIライブラリを作る際のハマりどころ
shuta13
0
830
Other Decks in Technology
See All in Technology
AIエージェントを雇う前に決める5つのこと
knishioka
1
160
推論の観測、できていますか? 〜 Google Cloud Gemini Enterprise Agent Platformで 3つの Gemini モデルを実測して踏んだ、評価の罠 〜
shukob
PRO
0
140
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
190
Genie Code ワークショップ 基礎編 / Genie-Code-Workshop-fundamental
databricksjapan
PRO
0
350
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
110
Tab5をRubyで動くパソコンにする
kishima
1
180
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
180
AndroidでHDRメディアを「壊さずに」扱う
chigichan24
0
390
どんな手を使っても絶対間に合わせるスケジューラ
asari194617
0
1.6k
データエンジニアリングワークショップ:Auto LoaderとSparkで学ぶデータパイプライン構築
databricksjapan
PRO
0
150
振り返りこそエンジニアの本領
negima
0
280
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
200
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
510
RailsConf 2023
tenderlove
30
1.5k
Agile that works and the tools we love
rasmusluckow
331
22k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
440
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
エンジニアに許された特別な時間の終わり
watany
108
250k
Exploring anti-patterns in Rails
aemeredith
3
490
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
500
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
Bash Introduction
62gerente
615
220k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
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卒学生向け】採用選考エントリー受付開始
ありがとうございました