鄭沛軒
d1c5f2e31c
refactor: 優化例句口說功能設計與用戶體驗
...
## VoiceRecorder 組件改進
- 添加自定義說明文字 prop (instructionText)
- 調整布局順序:圖片 → 說明 → 例句
- 統一圖片容器樣式與其他模式一致
## 例句口說頁面優化
- 移除重複的例句和圖片顯示
- 簡化錄音完成回饋區域
- 移除不必要的目標單字和發音顯示
- 調整回饋訊息為分行顯示,提升可讀性
- 實現滿版寬度布局
## 用戶體驗改進
- 消除重複內容,介面更簡潔
- 統一設計語言,視覺一致性更好
- 優化訊息層次,重點更突出
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 04:12:52 +08:00
鄭沛軒
7203346134
feat: 完成例句重組與例句口說功能設計
...
## 例句重組功能實現
- 實現完整的點擊式單字重組功能
- 添加例句圖片顯示支援
- 創建直觀的重組區域和可用單字區域
- 實現答案檢查和結果回饋系統
- 提供重新開始功能
## 例句口說功能優化
- 添加例句圖片顯示
- 重新設計為完整例句口說練習
- 使用統一的區塊化布局設計
- 移除單獨的詞彙發音區塊,專注於例句練習
- 調整VoiceRecorder目標為完整例句
## 技術改進
- 改進拖拉操作為更簡單的點擊操作
- 統一所有測驗模式的視覺設計
- 優化用戶互動體驗和學習流程
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 04:00:14 +08:00
鄭沛軒
a20fa9004d
feat: 重構例句填空與例句重組功能
...
## 例句填空重大改進
- 實現真正的例句挖空功能,支援點擊輸入
- 添加例句圖片顯示,提供視覺化學習輔助
- 重新設計答案回饋為滿版左對齊布局
- 優化提示功能顯示詞彙定義而非字母提示
- 移除例句中文翻譯,專注於英文理解
## 例句重組功能增強
- 添加例句圖片顯示功能
- 保持與例句填空一致的視覺設計
## 其他優化
- 修復翻卡記憶標題置中問題
- 優化詞彙聽力模式,移除定義和翻譯干擾
- 統一所有測驗模式的標題和布局格式
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 03:41:44 +08:00
鄭沛軒
a39ef4ba6f
ux: 調整測驗頁面布局為統一格式
...
- 將所有測驗模式的標題移至左上角
- 難度標籤移至右上角
- 為每個測驗添加清楚的操作說明文字
- 使用 flex justify-between 布局統一標題區域
改善用戶體驗,讓每個測驗的目的和操作方式更加清晰明確。
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 02:49:36 +08:00
鄭沛軒
55db91c872
refactor: 重新命名學習模式為更清晰的名稱
...
- 翻卡題 → 翻卡記憶 (flip-memory)
- 選擇題 → 詞彙選擇 (vocab-choice)
- 詞彙聽力題 → 詞彙聽力 (vocab-listening)
- 例句聽力題 → 例句聽力 (sentence-listening)
- 填空題 → 例句填空 (sentence-fill)
- 例句重組題 → 例句重組 (sentence-reorder)
- 例句口說題 → 例句口說 (sentence-speaking)
更新了TypeScript型別定義、Tab Bar按鈕文字、測驗頁面標題和所有相關的條件判斷邏輯。新名稱更具描述性,用戶更容易理解每種測驗的功能和目標。
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 01:00:42 +08:00
鄭沛軒
e794f47909
fix: 修復選擇題模式的 TypeScript 型別錯誤
...
為 selectedOtherWords 變數加上明確的 string[] 型別宣告,
解決了 TypeScript 無法推斷變數型別的編譯錯誤。
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 23:49:20 +08:00
鄭沛軒
15c4bffe3d
ux: 優化選擇題模式的對齊方式和答案回饋
...
- 統一選擇題內容為左對齊:問題文字、選項按鈕、答案回饋
- 完善答案顯示:答對和答錯時都顯示詞彙、音標和播放功能
- 改善學習回饋體驗,確保用戶獲得完整的發音資訊
- 優化視覺一致性,與翻卡模式保持統一設計語言
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 23:36:53 +08:00
鄭沛軒
5bd823ee91
ux: 重構學習模式設計與導航體驗
...
- 改進選擇題模式:顯示定義讓用戶選擇對應英文詞彙
- 優化選項生成邏輯:動態從卡片組生成選項並隨機排序
- 新增翻卡背面例句播放功能,提升學習效果
- 統一所有學習模式導航按鈕位置和樣式
- 實現全版導航按鈕設計,改善觸控體驗
- 修正結果顯示邏輯和音頻回饋功能
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 23:23:02 +08:00
鄭沛軒
c1e296c860
ux: 實現翻卡模式動態高度適配與版面優化
...
- 新增動態高度計算系統,解決翻轉時卡片大小變化問題
- 實現正面背面高度自動匹配,確保翻轉體驗一致
- 優化翻卡模式設計:移除CEFR標籤、簡化正面佈局
- 改善背面內容組織:灰底區分、左對齊文字、移除冗餘元素
- 修復背面底部空白問題,提升視覺整潔度
- 添加平滑高度過渡動畫,增強用戶體驗
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 23:09:45 +08:00
鄭沛軒
31e3fe9fa8
ux: 優化學習頁面用戶體驗和互動設計
...
- 修正翻卡模式卡片翻轉動畫和版面配置
- 改善選擇題模式答案顯示和回饋機制
- 優化語音錄音組件狀態管理
- 加強用戶交互體驗和視覺回饋
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 17:44:39 +08:00
鄭沛軒
da85bb8f42
ux: 優化學習模式的用戶體驗設計
...
- 簡化語音播放器,移除口音切換和音量控制
- 修正選擇題邏輯:根據英文定義選擇詞彙
- 修復播放按鈕事件冒泡問題,避免誤觸翻卡
- 優化翻卡背面設計,使用灰色區塊和自適應高度
- 統一語音播放為美式發音,提供一致體驗
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 14:49:37 +08:00
鄭沛軒
0bfb08a97b
ux: 優化翻卡模式和錯誤回報按鈕的視覺設計
...
- 移除翻卡背面的滾動條,讓內容自然延伸
- 將錯誤回報按鈕從紅色改為灰色,降低視覺干擾
- 提升整體用戶體驗的視覺和諧度
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 13:50:36 +08:00
鄭沛軒
d5395f5741
feat: 實現完整語音功能系統與學習模式整合
...
- 新增 TTS 語音播放和語音辨識功能
- 實現 Azure Speech Services 整合架構
- 建立完整的音頻快取和評估系統
- 整合語音功能到五種學習模式
- 新增語音錄製和發音評分組件
- 優化學習進度和評分機制
- 完成語音功能規格書和測試案例文檔
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 13:33:17 +08:00
鄭沛軒
f90286ad88
ux: 優化用戶友善文案,將「高價值詞彙」改為「重點學習詞彙」
...
文案優化:
- 程度指示器:「💎 高價值範圍」→「📈 重點學習範圍」
- 設定頁面:「高價值詞彙範圍」→「重點學習範圍」
- AI Prompt:「標記為高價值」→「標記為重點學習」
- 詞彙標記:「高價值詞彙」→「重點學習詞彙」
視覺優化:
- 圖標升級:⭐ (價值感) → 🎯 (目標感)
- 強化學習導向的表達方式
技術修復:
- 新增DbContext個人化欄位映射,解決資料庫欄位問題
- 確保C#模型與SQLite表結構正確對應
用戶體驗提升:
- 從商業化的「價值」概念轉為教育性的「學習」概念
- 更直觀的個人化學習目標表達
- 減少用戶理解負擔,提升整體友善度
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-19 00:26:10 +08:00
鄭沛軒
0bf0541c87
feat: 實現個人化高價值詞彙判定系統
...
主要功能:
- 實現基於用戶英語程度的個人化詞彙標記
- A1用戶標記A2-B1為高價值,C1用戶只標記C2為高價值
- 完整的前後端個人化學習體驗
後端架構:
- 擴充User實體新增英語程度相關欄位
- 建立CEFRLevelService等級比較服務
- 更新GeminiService支援個人化AI Prompt
- API支援userLevel參數,回應包含個人化資訊
前端體驗:
- 新增完整的程度設定頁面(/settings)
- 導航選單整合設定連結
- generate頁面顯示個人化程度指示器
- 自動傳遞用戶程度到API進行個人化分析
技術實現:
- 動態AI Prompt根據用戶程度調整判定標準
- localStorage保存用戶程度設定
- 向下相容設計,未設定時預設A2程度
- 完整的錯誤處理和回退機制
用戶價值:
- 從固定B1以上改為個人化程度+1~2級
- 真正適合用戶挑戰程度的詞彙標記
- 提升學習效率,避免過難或過簡單的干擾
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 22:37:38 +08:00
鄭沛軒
4f16cbfa08
refactor: 移除所有快取機制並優化 AI 服務架構
...
主要變更:
- 完全移除句子分析快取,每次都進行真實 AI 分析
- 移除詞彙查詢的假資料實現,改用真實 Gemini AI
- 在 GeminiService 中新增專門的 AnalyzeWordAsync 方法
- 修正架構設計,將 AI 邏輯從 Controller 移到 Service 層
- 移除前端快取狀態顯示,簡化用戶介面
技術改善:
- 遵循分層架構原則,Service 層處理 AI 邏輯
- 統一錯誤處理和回退機制
- 新增完整的詞彙分析 JSON 解析邏輯
- 確保每次查詢都獲得最新的 AI 分析結果
附加:
- 新增查詢歷史系統設計規格文檔
- 為未來實現查詢歷史功能做準備
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 20:47:48 +08:00
鄭沛軒
255adc62c9
feat: 簡化句子分析功能並實現全詞彙可點擊
...
主要變更:
- 移除句子分析中的冗長解釋,只保留翻譯
- 修改 AI Prompt 簡化回應格式
- 實現所有單字都可點擊的互動功能
- 無預存資料的詞彙支援即時 AI 查詢
- 移除付費限制,提供完全免費的詞彙查詢體驗
- 新增詞彙快取機制技術規格文檔
技術改善:
- 優化 ClickableTextV2 組件支援全詞彙點擊
- 新增動態詞彙資料更新機制
- 改善視覺提示,區分有/無預存資料的詞彙
- 整理項目文檔結構,移除過時檔案
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 19:41:48 +08:00
鄭沛軒
e940d86f4a
feat: 暫時關閉使用次數限制系統
...
- 修改前端 isPremium 設定為 true,跳過使用次數檢查
- 修改後端 UsageService 調用參數為 premium 用戶
- 修復後端編譯錯誤,添加 System.Text.Json using
- 更新使用限制實施報告,添加完整修改記錄和復原步驟
- 驗證系統可無限制調用分析功能
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 15:10:54 +08:00
鄭沛軒
1fb7cadd52
feat: 新增完整的系統分析文檔和前端快取狀態顯示
...
前端改善:
- 新增快取狀態視覺化標籤 (💾 快取結果 / 🤖 AI 分析)
- 完善ClickableTextV2組件的大小寫屬性相容性
- 修復互動式單字查詢功能在快取場景下的顯示問題
- 改善載入狀態提示,增加時間預期說明
- 新增getWordProperty輔助函數,統一處理屬性讀取
系統文檔:
- 新增完整的功能規格文檔 (User Flow + 測試案例)
- 生成快取機制分析報告 (前端+後端)
- 建立使用限制功能實現報告
- 記錄所有檢查方法和問題解決過程
清理:
- 移除過時的環境設定文檔
- 整理專案結構
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 14:44:48 +08:00
鄭沛軒
c0edf93c8a
feat: 添加登入頁面開發模式自動填入功能
...
- 登入頁面自動填入測試資料 (john@mail.com / 1qaz@WSX)
- 只在開發環境生效,生產環境保持原有行為
- 添加開發模式視覺提示
- 註冊頁面保持手動輸入確保流程完整性
提升開發效率,無需每次手動輸入登入資料
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 02:38:52 +08:00
鄭沛軒
d69ba4ea8a
feat: 完成前端整合和調試優化
...
- 整合demo-v3功能到正式generate頁面
- 移除測試示例和調試內容
- 添加前端調試日誌協助排查問題
- 修復組件安全性檢查
- 符合原始功能規格要求
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 02:10:55 +08:00
鄭沛軒
76e95dbef2
feat: 實現互動式單字查詢系統,包含語法修正和高價值標記功能
...
## 主要功能
- 智能語法錯誤檢測和修正建議(9種錯誤類型)
- 高價值詞彙標記系統(片語/俚語/中高級單字)
- 三色視覺區分:🟡 高價值片語 🟢 高價值單字 🔵 普通單字
- 成本優化:高價值詞彙免費查詢,低價值詞彙按需收費
- 字數限制提升:50字→300字
## 技術實現
- 新增 ClickableTextV2 和 GrammarCorrectionPanel 組件
- 更新 Generate 頁面整合完整功能
- 完整的設計規格文檔(API、UI線框圖、功能規格)
- 多個演示頁面展示功能效果
## 成本效益
- 一次API調用,多次免費查詢
- 預估API成本降低80-95%
- 智能收費機制精準控制成本
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 19:57:08 +08:00
鄭沛軒
448883ff97
feat: 實現 AI 服務整合和前後端連接
...
- 整合 Google Gemini API 服務
- 添加測試端點支援無認證調用
- 實現前端 API 調用和資料格式轉換
- 完善錯誤處理和模擬資料回退
- 添加詞卡保存到資料庫功能
- 配置 User Secrets 安全管理 API 金鑰
- 優化 AI 服務條件判斷邏輯
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 16:08:37 +08:00
鄭沛軒
303f0ac727
fix: 統一 Generate 頁面導航體驗
...
- 在標準 Navigation 組件中添加「AI 生成」選項
- 將 Generate 頁面改為使用統一的 Navigation 組件
- 添加 ProtectedRoute 包裝確保安全性一致
- 移除自定義內聯導航,提升代碼維護性
- 確保所有頁面的導航體驗統一
現在所有頁面都有完整的響應式導航,包括手機版漢堡選單、用戶資訊和登出功能。
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 14:09:53 +08:00
鄭沛軒
715b735c4d
feat: 實現自動「未分類」預設卡組功能
...
- 新增 CardSet.IsDefault 欄位標識預設卡組
- 實現用戶註冊時自動創建「未分類」卡組
- 添加 ensure-default API 端點確保預設卡組存在
- 優化詞卡創建邏輯,支援自動歸類到預設卡組
- 改善前端表單處理,智能選擇預設卡組
- 修復預設卡組顯示對比度問題
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 13:41:30 +08:00
鄭沛軒
116daafc37
fix: 解決頁面切換時的晃動問題,強制顯示滾動軸
...
🔧 滾動軸晃動問題修復:
- 在 globals.css 中添加 `html { overflow-y: scroll; }`
- 強制垂直滾動軸始終顯示
- 防止內容長度不同的頁面切換時產生晃動
- 添加 `body { overflow-x: hidden; }` 防止橫向滾動
🎯 解決的問題:
- flashcards 頁面(內容少)vs dashboard/learn 頁面(內容多)
- 滾動軸出現/消失導致的頁面寬度變化
- 導航切換時的視覺跳動
✅ 現在的體驗:
- 所有頁面都有一致的滾動軸
- 頁面切換完全穩定,無晃動
- 專業級的用戶體驗
🚀 DramaLing 的 UI/UX 品質再次提升!
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 03:45:51 +08:00
鄭沛軒
ca64e99eec
fix: 修復 flashcards 頁面 CSS 佈局偏移問題
...
🔧 佈局一致性修復:
- 移除 flashcards 頁面的額外 header 容器
- 統一所有頁面的容器結構
- 修復雙重 max-w-7xl mx-auto 容器造成的偏移
- 簡化 CSS 層次結構
📐 現在所有頁面都使用統一結構:
```
<div className="min-h-screen bg-gray-50">
<Navigation />
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
<!-- 頁面內容 -->
</div>
</div>
```
✅ 解決的問題:
- flashcards 頁面不再偏右
- 所有頁面的對齊方式完全一致
- 減少不必要的容器嵌套
🎯 用戶現在看到的是完全一致的頁面佈局!
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 03:39:12 +08:00
鄭沛軒
4644988f00
fix: 完全統一所有頁面的導航系統
...
🔧 徹底解決導航不一致問題:
- 修復 learn 頁面使用舊的內聯導航
- 升級 Navigation 組件支援學習模式
- 添加 showExitLearning 屬性處理特殊情況
- 移除所有重複的導航代碼
🎯 統一導航系統功能:
- 所有頁面使用同一個 Navigation 組件
- 學習頁面特殊的「× 結束學習」按鈕
- 當前頁面自動高亮顯示
- 完整的用戶資訊和登出功能
📋 修復的頁面:
- ✅ dashboard: 使用統一導航
- ✅ flashcards: 使用統一導航
- ✅ learn: 使用統一導航(含結束學習按鈕)
🚀 現在所有頁面的導航完全一致!
不再有兩套導航系統,用戶體驗大幅提升。
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 03:33:11 +08:00
鄭沛軒
b6ac4e7d6c
fix: 修復導航一致性問題,建立統一的 Navigation 組件
...
🔧 導航系統重構:
- 建立可重用的 Navigation 組件
- 統一所有頁面的頂部導航
- 修復 flashcards 頁面導航消失問題
- 更新 dashboard 頁面使用新組件
🎯 導航功能:
- DramaLing Logo(點擊回到 dashboard)
- 主要導航:儀表板、詞卡、學習、AI 生成
- 用戶資訊:頭像、用戶名、登出按鈕
- 當前頁面高亮顯示
🚀 用戶體驗改進:
- 所有頁面導航一致
- 清晰的視覺層次
- 響應式設計
- 平滑的互動效果
現在用戶可以在任何頁面輕鬆導航到其他功能!
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 03:26:01 +08:00
鄭沛軒
c9f920f17a
feat: 完成詞卡完整 CRUD 功能
...
🎯 詞卡管理系統現已功能完整:
- ✅ 新增詞卡:完整的表單介面,支援所有欄位
- ✅ 編輯詞卡:點擊編輯按鈕可修改詞卡內容
- ✅ 刪除詞卡:確認對話框防止誤刪
- ✅ 查看詞卡:完整的詞卡資訊展示
🔧 技術實作:
- 建立 FlashcardForm 可重用組件
- 支援新增和編輯模式
- 完整的表單驗證和錯誤處理
- 模態視窗 UI 設計
- 自動重新載入資料
📊 用戶體驗:
- 直觀的操作介面
- 即時回饋和錯誤提示
- 載入狀態顯示
- 響應式設計
🚀 DramaLing 現在是完全可用的詞卡管理應用!
用戶可以:建立帳號 → 管理詞卡集合 → 新增/編輯/刪除詞卡
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 03:11:24 +08:00
鄭沛軒
abc0b00641
feat: 完成前端詞卡功能整合,實現真實資料顯示
...
🎯 第一階段開發完成里程碑:
- ✅ 建立完整的 FlashcardsService API 整合層
- ✅ 重構 /flashcards 頁面使用真實後端資料
- ✅ 實作詞卡集合和詞卡列表顯示
- ✅ 添加載入狀態和錯誤處理
- ✅ 實作搜尋和篩選功能
- ✅ 集成 ProtectedRoute 認證保護
🚀 技術成果:
- 前端完全不再使用 mock 資料
- 真實的 API 調用和資料庫操作
- 用戶可以在 http://localhost:3000/flashcards 看到真實詞卡
- 響應式設計適配不同裝置
📊 功能驗證:
- 詞卡集合正確顯示(商務英語基礎)
- 詞卡資料正確載入(negotiate, meeting, presentation)
- 搜尋功能正常運作
- 詞卡詳情完整展示(發音、例句、熟練度)
🎯 下一步:實作詞卡 CRUD 操作和 AI 生成功能
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-17 02:58:11 +08:00
鄭沛軒
c94cf75838
feat: DramaLing 完整版本 - 韓劇單字學習應用
...
🚀 主要功能:
- 前後端分離架構(Next.js + .NET Core)
- 完整用戶認證系統(註冊、登入、JWT)
- 單字卡學習功能
- AI 輔助生成單字卡
- 多種學習模式(翻卡、選擇題、拼寫)
- 學習進度追蹤
- 響應式設計
🏗️ 技術棧:
- Frontend: Next.js 15, TypeScript, Tailwind CSS
- Backend: .NET Core 8, Entity Framework, SQLite
- 認證: JWT Bearer Token
- AI: Google Gemini API
- 資料庫: SQLite(測試)
🌟 特色:
- 完整的 CRUD 操作
- 安全的環境變數配置
- 乾淨的代碼結構
- 完善的錯誤處理
- RESTful API 設計
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-16 23:06:47 +08:00