-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
Description
Vercel Edge Functions対応 + モノレポ構成への移行
📋 概要
現在のCloudflare Pages Functions版を維持しつつ、Vercel Edge Functions対応版を追加。モノレポ構成に移行することで、両プラットフォームでのパフォーマンス比較を可能にする。
🎯 目的
- プラットフォーム比較: Cloudflare vs Vercelの実測データ取得
- 学習機会: モノレポ管理とTurborepoの実践
- ポートフォリオ価値: 複数プラットフォーム対応の実装例
- 既存版の保護: mainブランチは完全保護、フォークユーザーへの影響ゼロ
🏗️ 最終的なアーキテクチャ
demo-react-event-calendar/
├── turbo.json # Turborepo設定
├── package.json # ルートWorkspace
├── packages/
│ ├── frontend/ # 共通フロントエンド(Vite + React)
│ ├── shared/ # 共通型定義・ロジック
│ ├── backend-cloudflare/ # Cloudflare版
│ └── backend-vercel/ # Vercel版(新規)
└── db/ # 共通データベーススキーマ
🗄️ データベース戦略
開発環境: react-event-calendar-dev(共有)
プレビュー: react-event-calendar-staging(共有)
本番環境:
├── Cloudflare: event-app-prod(既存)
└── Vercel: vercel-prod(新規作成)
🌳 ブランチ戦略
main # Cloudflare版(既存・保護)
└── フォークユーザーに影響なし
monorepo-structure # 両プラットフォーム対応版(新規)
└── 比較検証用
📋 実装フェーズ
Phase 1: 基盤構築
- Phase 1-1: ブランチ戦略とバックアップ #60 ブランチ戦略とバックアップ(0.5-1日)
- #[Issue番号] Turborepo導入とワークスペース設定(1日)
- #[Issue番号] 既存ファイルの移動(1日)
- #[Issue番号] TypeScript設定の統一(1日)
Phase 2: Vercel実装
- #[Issue番号] Vercelデータベースと環境構築(1日)
- #[Issue番号] Vercel Edge Functions API実装(4-5日)
Phase 3: 整備・最適化
- #[Issue番号] 共通utilsの抽出(1日)
- #[Issue番号] CI/CD設定(1日)
- #[Issue番号] パフォーマンス比較ツール作成(1日)
- #[Issue番号] ドキュメント整備(1日)
📊 全体スケジュール
| Phase | 内容 | 所要時間 | 累計 |
|---|---|---|---|
| Phase 1 | 基盤構築 | 4-5日 | 5日 |
| Phase 2 | Vercel実装 | 5-6日 | 11日 |
| Phase 3 | 整備・最適化 | 4日 | 15日 |
合計: 約3週間(14-15日)
🎯 主要な技術スタック
| カテゴリ | 技術 |
|---|---|
| モノレポ管理 | Turborepo |
| フロントエンド | Vite + React(変更なし) |
| バックエンド(CF) | Cloudflare Pages Functions |
| バックエンド(VL) | Vercel Edge Functions |
| データベース | Turso(libSQL) |
| 認証 | Better Auth |
| 画像保存(CF) | Cloudflare R2 |
| 画像保存(VL) | Vercel Blob |
✅ 最終的な成果物
- mainブランチ(Cloudflare版・既存)
- monorepo-structureブランチ(両対応版)
- パフォーマンス比較レポート
- 完全なドキュメント
🔗 関連リンク
- 既存版(Cloudflare): https://demo-react-event-calendar.pages.dev
- Vercel版: デプロイ後に追加
- リポジトリ: https://github.com/oumelab/demo-react-event-calendar
📝 注意事項
フォークユーザーへの影響
- ✅ mainブランチは一切変更なし
- ✅ 既存のセットアップ手順はそのまま有効
- ✅ フォーク済みプロジェクトに影響なし
ブランチの使い分け
- main: 安定版として維持(Cloudflare専用)
- monorepo-structure: 実験的な統合版(両対応)
開始日: [開始時に記入]
完了予定: 開始から約3週間後
担当者: @oumelab
優先度: Medium
ラベル: enhancement, infrastructure, platform-comparison