550e2fc97a
後端: - 新增 DivingOffer Model / DivingOfferController(列表+詳情 API,支援搜尋/篩選/分頁) - 修正 Google OAuth callback 改為 redirect 至前端(SocialAuthController) - 新增 config/cors.php 允許前端 origin - .gitignore 新增 frontend/ 排除規則 前端(frontend/): - Vue 3 + Vite + Tailwind CSS + Pinia + Vue Router - 頁面:首頁、課程列表、課程詳情、登入、註冊、個人資料、OAuth callback - 整合至 Docker(multi-stage build,nginx 靜態服務於 port 5173) Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
1.4 KiB
1.4 KiB
Why
CFDivePlatform 後端 API 已具備會員認證與基礎資料管理能力,但目前缺乏任何前端介面,使用者無法透過瀏覽器使用平台。建立獨立的會員端前端 MVP,讓潛水愛好者能瀏覽、搜尋課程,是平台從「有 API」走向「可用產品」的第一步。
What Changes
- 新建獨立前端 repo(Vue 3 + Vite + Tailwind CSS),與此 Laravel repo 分開部署
- 後端新增 Diving Offers 公開 API:課程列表(含搜尋/篩選)與課程詳情兩支 endpoint
- 前端實作六個頁面:首頁、課程列表、課程詳情、登入、註冊、會員個人資料
- 前端整合現有 Auth API(Sanctum token)與 Google OAuth redirect 流程
Capabilities
New Capabilities
diving-offers-api:後端提供公開的潛水課程列表與詳情 API,支援關鍵字搜尋、地區與標籤篩選member-portal-ui:獨立前端應用,包含課程瀏覽、認證流程、會員個人資料等完整使用者介面
Modified Capabilities
(無)
Impact
後端(此 Laravel repo)
- 新增
DivingOfferController與兩條 API 路由 diving_offers資料表已存在,僅需新增 Model fillable 與 Controller
前端(新 repo)
- 獨立 Vue 3 repo,需另行建立專案結構
- 依賴後端 API base URL(透過
.env設定) - CORS 需在 Laravel 端設定允許前端 origin