ADR-001 — 採用 Turborepo Monorepo 架構
架構決策記錄 | 分類:基礎架構 | 負責人:陳建宏
背景脈絡(Context)
大豐 ACE 系統需要同時維護多個前端應用(admin、chief、coachy、onsite)與共用套件(ui、mock、types、tokens),傳統多 Repo 管理方式導致版本同步困難、重複程式碼問題嚴重。
決策內容(Decision)
採用 Turborepo 管理 Monorepo,搭配 pnpm workspace 進行依賴管理。所有 app 共用 @dafon/ui、@dafon/types 等 packages,確保 UI 一致性與型別安全。
後果影響(Consequences)
- •優點:統一版本管理、程式碼共享、並行建置加速 CI/CD
- •優點:型別安全在各 App 間完整傳遞
- •缺點:初期學習曲線較高
- •缺點:大型 Repo 搜尋效能可能下降
考慮的替代方案(Alternatives)
- •Git Submodules — 版本管理複雜,已排除
- •NPM Publish — 每次修改需發版,迭代速度慢
- •Nx — 功能豐富但設定繁瑣
ADR 資訊
狀態
已採納
分類
基礎架構
負責人
陳建宏
建立日期
2026-01-15
最後更新
2026-01-20