diff --git a/docs/01_requirement/system_structure_design.json b/docs/01_requirement/system_structure_design.json index c1aa231..4596d61 100644 --- a/docs/01_requirement/system_structure_design.json +++ b/docs/01_requirement/system_structure_design.json @@ -10,7 +10,7 @@ { "module_name": "AI互動分析", "module_id": "MD_AIAnalysis", - "module_type": "CORE", + "module_type": "CORE", "description": "即時訊息分析翻譯、回覆範例、三維度評分和對話訂正功能" }, { @@ -48,366 +48,256 @@ { "feature_name": "多場景劇本對話", "feature_id": "FT_ScenarioDialogue", - "module_id": ["MD_DialogueTraining"], + "module_id": [ + "MD_DialogueTraining" + ], "scenario": "用戶選擇車禍、購物、餐廳等真實場景進行對話練習", "goal": "提升實際溝通情境下的對話能力", - "data_binding": ["Lesson", "Dialogue", "UserProfile"], - "view_ids": ["UI_ScenarioList", "UI_DialogueChat", "UI_ScenarioDetail"] + "data_binding": [ + "Lesson", + "Dialogue", + "UserProfile" + ], + "view_ids": [ + "UI_ChallengeLevel_Map", + "UI_ScenarioDialog_Scene", + "UI_ScenarioDialog_GoalDetail" + ] }, { "feature_name": "任務導向對話訓練", - "feature_id": "FT_TaskDialogue", - "module_id": ["MD_DialogueTraining"], + "feature_id": "FT_TaskDialogue", + "module_id": [ + "MD_DialogueTraining" + ], "scenario": "用戶完成指定任務如安撫、報警、說明等對話目標", "goal": "訓練目標導向的溝通技能", - "data_binding": ["Task", "TaskReward", "Dialogue"], - "view_ids": ["UI_TaskList", "UI_TaskDialogue", "UI_TaskProgress"] + "data_binding": [ + "Task", + "TaskReward", + "Dialogue" + ], + "view_ids": [ + "UI_ChallengeLevel_ChoosePopup", + "UI_ScenarioDialog_Scene", + "UI_ScenarioDialog_ReplyResult" + ] }, { "feature_name": "指定詞彙練習", "feature_id": "FT_VocabularyPractice", - "module_id": ["MD_DialogueTraining", "MD_VocabularyReview"], + "module_id": [ + "MD_DialogueTraining", + "MD_VocabularyReview" + ], "scenario": "用戶在對話中練習指定詞彙的使用", "goal": "強化特定詞彙的實際應用能力", - "data_binding": ["Lesson", "Dialogue"], - "view_ids": ["UI_VocabularyList", "UI_VocabularyDialogue"] + "data_binding": [ + "Lesson", + "Dialogue" + ], + "view_ids": [ + "UI_VocabIntro_CardIntro", + "UI_VocabIntro_Choice", + "UI_VocabReview_Main" + ] }, { "feature_name": "限時對話挑戰", "feature_id": "FT_TimedChallenge", - "module_id": ["MD_DialogueTraining", "MD_Gamification"], + "module_id": [ + "MD_DialogueTraining", + "MD_Gamification" + ], "scenario": "用戶在限定時間內完成對話任務", "goal": "提升反應速度和流暢度", - "data_binding": ["Task", "TaskReward", "Leaderboard"], - "view_ids": ["UI_ChallengeList", "UI_TimedDialogue", "UI_ChallengeResult"] + "data_binding": [ + "Task", + "TaskReward", + "Leaderboard" + ], + "view_ids": [ + "UI_ChallengeLevel_Map", + "UI_ScenarioDialog_Scene", + "UI_LevelResult_SuccessResult" + ] }, { "feature_name": "AI即時分析回饋", "feature_id": "FT_AIFeedback", - "module_id": ["MD_AIAnalysis"], + "module_id": [ + "MD_AIAnalysis" + ], "scenario": "AI即時分析用戶對話並提供翻譯和回覆建議", "goal": "提供學習支援和改進建議", - "data_binding": ["Dialogue"], - "view_ids": ["UI_DialogueAnalysis", "UI_FeedbackPanel"] + "data_binding": [ + "Dialogue" + ], + "view_ids": [ + "UI_ScenarioDialog_ReplyResult", + "UI_DialogCorrection_SyntaxExplanation_Play" + ] }, { "feature_name": "三維度評分系統", "feature_id": "FT_ScoreSystem", - "module_id": ["MD_AIAnalysis"], + "module_id": [ + "MD_AIAnalysis" + ], "scenario": "系統評估用戶語法、語意、流暢度表現", "goal": "量化學習成效並指出改進方向", - "data_binding": ["Dialogue", "UserProfile"], - "view_ids": ["UI_ScoreDisplay", "UI_ProgressChart"] + "data_binding": [ + "Dialogue", + "UserProfile" + ], + "view_ids": [ + "UI_LevelResult_ScoreSummary", + "UI_LevelResult_DialogScoreSummary" + ] }, { "feature_name": "對話訂正功能", "feature_id": "FT_DialogueCorrection", - "module_id": ["MD_AIAnalysis"], + "module_id": [ + "MD_AIAnalysis" + ], "scenario": "AI提供對話內容的修正建議和更好的表達方式", "goal": "學習正確表達和優化溝通技巧", - "data_binding": ["Dialogue"], - "view_ids": ["UI_CorrectionPanel", "UI_ImprovedDialogue"] + "data_binding": [ + "Dialogue" + ], + "view_ids": [ + "UI_LevelResult_CorrectionResult", + "UI_DialogCorrection_SyntaxRetry_Play" + ] }, { "feature_name": "排行榜競爭", "feature_id": "FT_Leaderboard", - "module_id": ["MD_Gamification"], + "module_id": [ + "MD_Gamification" + ], "scenario": "用戶查看學習排名和與其他用戶競爭", "goal": "激發競爭動機維持學習熱忱", - "data_binding": ["Leaderboard", "UserProfile"], - "view_ids": ["UI_Leaderboard", "UI_RankingDetail"] + "data_binding": [ + "Leaderboard", + "UserProfile" + ], + "view_ids": [ + "UI_SocialRanking_Main", + "UI_RankingDetail" + ] }, { "feature_name": "成就系統", "feature_id": "FT_Achievement", - "module_id": ["MD_Gamification"], + "module_id": [ + "MD_Gamification" + ], "scenario": "用戶解鎖學習里程碑和收集成就徽章", "goal": "提供學習成就感和持續動機", - "data_binding": ["TaskReward", "UserProfile"], - "view_ids": ["UI_AchievementList", "UI_AchievementDetail", "UI_BadgeCollection"] + "data_binding": [ + "TaskReward", + "UserProfile" + ], + "view_ids": [ + "UI_LevelResult_RewardConfirm", + "UI_LevelResult_SmallReward", + "UI_BadgeCollection" + ] }, { "feature_name": "每日複習清單", "feature_id": "FT_DailyReview", - "module_id": ["MD_VocabularyReview"], + "module_id": [ + "MD_VocabularyReview" + ], "scenario": "用戶每天完成5分鐘詞彙複習任務", "goal": "強化詞彙記憶和建立學習習慣", - "data_binding": ["Lesson", "UserProfile"], - "view_ids": ["UI_DailyReview", "UI_ReviewProgress"] + "data_binding": [ + "Lesson", + "UserProfile" + ], + "view_ids": [ + "UI_VocabReview_Main", + "UI_ReviewProgress" + ] }, { "feature_name": "間隔複習演算法", "feature_id": "FT_SpacedRepetition", - "module_id": ["MD_VocabularyReview"], + "module_id": [ + "MD_VocabularyReview" + ], "scenario": "系統根據遺忘曲線安排最佳複習時間", "goal": "最大化長期記憶效果", - "data_binding": ["Lesson", "UserProfile"], - "view_ids": ["UI_ReviewSchedule", "UI_ReviewCards"] + "data_binding": [ + "Lesson", + "UserProfile" + ], + "view_ids": [ + "UI_ReviewSchedule", + "UI_ReviewCards" + ] }, { "feature_name": "訂閱制服務", "feature_id": "FT_Subscription", - "module_id": ["MD_Subscription"], + "module_id": [ + "MD_Subscription" + ], "scenario": "用戶購買月費或年費解鎖進階功能", "goal": "提供穩定營收和完整功能體驗", - "data_binding": ["Subscription", "Purchase", "UserProfile"], - "view_ids": ["UI_SubscriptionPlans", "UI_PaymentFlow", "UI_SubscriptionStatus"] + "data_binding": [ + "Subscription", + "Purchase", + "UserProfile" + ], + "view_ids": [ + "UI_SubscriptionPlans", + "UI_PaymentFlow", + "UI_Subscription_Result" + ] }, { "feature_name": "內容付費解鎖", "feature_id": "FT_ContentPurchase", - "module_id": ["MD_Subscription"], + "module_id": [ + "MD_Subscription" + ], "scenario": "用戶購買特殊情境劇本包和專業對話包", "goal": "擴展學習內容選擇和增加營收", - "data_binding": ["Purchase", "Lesson"], - "view_ids": ["UI_ContentStore", "UI_PurchaseConfirm", "UI_PurchasedContent"] + "data_binding": [ + "Purchase", + "Lesson" + ], + "view_ids": [ + "UI_ItemStore_Main", + "UI_ItemStore_ConfirmPopup", + "UI_PurchasedContent" + ] }, { "feature_name": "廣告觀看獎勵", "feature_id": "FT_AdReward", - "module_id": ["MD_Advertisement"], + "module_id": [ + "MD_Advertisement" + ], "scenario": "免費用戶觀看廣告獲得功能解鎖或獎勵", "goal": "為免費用戶提供價值同時產生廣告收入", - "data_binding": ["AdImpression", "TaskReward", "UserProfile"], - "view_ids": ["UI_AdOffer", "UI_AdViewing", "UI_RewardClaim"] + "data_binding": [ + "AdImpression", + "TaskReward", + "UserProfile" + ], + "view_ids": [ + "UI_AdOffer", + "UI_AdViewing", + "UI_RewardClaim" + ] } ], "views": [ - { - "view_id": "UI_ScenarioList", - "name": "場景選擇列表", - "type": "List", - "goal": "讓用戶瀏覽並選擇對話練習場景", - "interaction": "用戶滑動瀏覽場景,點擊選擇", - "components": [ - { - "name": "場景卡片", - "type": "Card", - "interaction": "點擊選擇場景", - "action": "導航到場景詳情", - "navigation_view_id": "UI_ScenarioDetail" - }, - { - "name": "難度標籤", - "type": "Badge", - "interaction": "顯示場景難度", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_DialogueChat", - "name": "對話聊天介面", - "type": "Detail", - "goal": "提供沉浸式對話練習環境", - "interaction": "用戶輸入文字或語音進行對話", - "components": [ - { - "name": "對話輸入框", - "type": "InputField", - "interaction": "用戶輸入對話內容", - "action": "發送訊息", - "navigation_view_id": null - }, - { - "name": "分析按鈕", - "type": "Button", - "interaction": "點擊獲得AI分析", - "action": "顯示分析面板", - "navigation_view_id": "UI_DialogueAnalysis" - }, - { - "name": "進度條", - "type": "Progress", - "interaction": "顯示對話進度", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ScenarioDetail", - "name": "場景詳情頁", - "type": "Detail", - "goal": "展示場景資訊和學習目標", - "interaction": "用戶查看場景介紹並開始練習", - "components": [ - { - "name": "場景描述", - "type": "Text", - "interaction": "顯示場景背景", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "開始練習按鈕", - "type": "Button", - "interaction": "點擊開始對話練習", - "action": "進入對話介面", - "navigation_view_id": "UI_DialogueChat" - }, - { - "name": "場景圖片", - "type": "Image", - "interaction": "展示場景視覺", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_TaskList", - "name": "任務列表", - "type": "List", - "goal": "展示可完成的對話任務", - "interaction": "用戶選擇想要挑戰的任務", - "components": [ - { - "name": "任務項目", - "type": "ListItem", - "interaction": "點擊選擇任務", - "action": "進入任務對話", - "navigation_view_id": "UI_TaskDialogue" - }, - { - "name": "任務進度", - "type": "Progress", - "interaction": "顯示完成進度", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_TaskDialogue", - "name": "任務對話介面", - "type": "Detail", - "goal": "執行特定任務的對話練習", - "interaction": "用戶完成任務導向的對話", - "components": [ - { - "name": "任務提示", - "type": "Text", - "interaction": "顯示任務目標", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "對話輸入", - "type": "InputField", - "interaction": "用戶輸入對話", - "action": "發送回應", - "navigation_view_id": null - }, - { - "name": "任務完成按鈕", - "type": "Button", - "interaction": "標記任務完成", - "action": "顯示任務結果", - "navigation_view_id": "UI_TaskProgress" - } - ] - }, - { - "view_id": "UI_TaskProgress", - "name": "任務進度頁", - "type": "Dashboard", - "goal": "展示任務完成情況和獎勵", - "interaction": "用戶查看任務成果", - "components": [ - { - "name": "完成狀態圖表", - "type": "Chart", - "interaction": "顯示任務統計", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "獎勵領取按鈕", - "type": "Button", - "interaction": "點擊領取獎勵", - "action": "領取任務獎勵", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_VocabularyList", - "name": "詞彙列表", - "type": "List", - "goal": "展示需要練習的詞彙", - "interaction": "用戶瀏覽和選擇詞彙練習", - "components": [ - { - "name": "詞彙卡片", - "type": "Card", - "interaction": "點擊詞彙項目", - "action": "開始詞彙對話", - "navigation_view_id": "UI_VocabularyDialogue" - }, - { - "name": "掌握度標籤", - "type": "Badge", - "interaction": "顯示掌握程度", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_VocabularyDialogue", - "name": "詞彙對話練習", - "type": "Detail", - "goal": "在對話中練習特定詞彙", - "interaction": "用戶使用指定詞彙進行對話", - "components": [ - { - "name": "目標詞彙提示", - "type": "Text", - "interaction": "顯示需練習詞彙", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "對話輸入區", - "type": "InputField", - "interaction": "輸入包含詞彙的句子", - "action": "提交對話", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_Leaderboard", - "name": "排行榜", - "type": "List", - "goal": "顯示用戶學習排名", - "interaction": "用戶查看自己和他人的排名", - "components": [ - { - "name": "排名項目", - "type": "ListItem", - "interaction": "點擊查看詳細", - "action": "顯示排名詳情", - "navigation_view_id": "UI_RankingDetail" - }, - { - "name": "用戶頭像", - "type": "Avatar", - "interaction": "顯示用戶資訊", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "分數顯示", - "type": "Text", - "interaction": "顯示用戶分數", - "action": "無互動", - "navigation_view_id": null - } - ] - }, { "view_id": "UI_RankingDetail", "name": "排名詳情", @@ -431,293 +321,6 @@ } ] }, - { - "view_id": "UI_SubscriptionPlans", - "name": "訂閱方案頁", - "type": "List", - "goal": "展示可選訂閱方案", - "interaction": "用戶比較和選擇訂閱方案", - "components": [ - { - "name": "方案卡片", - "type": "Card", - "interaction": "選擇訂閱方案", - "action": "進入付款流程", - "navigation_view_id": "UI_PaymentFlow" - }, - { - "name": "特色標籤", - "type": "Badge", - "interaction": "顯示方案特色", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_PaymentFlow", - "name": "付款流程", - "type": "Wizard", - "goal": "完成訂閱付款", - "interaction": "用戶完成付款步驟", - "components": [ - { - "name": "付款步驟", - "type": "Stepper", - "interaction": "顯示付款進度", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "確認按鈕", - "type": "Button", - "interaction": "確認付款", - "action": "處理付款", - "navigation_view_id": "UI_SubscriptionStatus" - } - ] - }, - { - "view_id": "UI_SubscriptionStatus", - "name": "訂閱狀態頁", - "type": "Dashboard", - "goal": "顯示當前訂閱狀態", - "interaction": "用戶管理訂閱", - "components": [ - { - "name": "狀態顯示", - "type": "Text", - "interaction": "顯示訂閱狀態", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "管理按鈕", - "type": "Button", - "interaction": "管理訂閱", - "action": "修改訂閱", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_DailyReview", - "name": "每日複習", - "type": "Detail", - "goal": "完成每日詞彙複習任務", - "interaction": "用戶進行複習練習", - "components": [ - { - "name": "複習卡片", - "type": "Card", - "interaction": "翻轉查看答案", - "action": "標記掌握度", - "navigation_view_id": null - }, - { - "name": "完成進度", - "type": "Progress", - "interaction": "顯示複習進度", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ReviewProgress", - "name": "複習進度追蹤", - "type": "Dashboard", - "goal": "追蹤複習效果和進度", - "interaction": "用戶查看複習統計", - "components": [ - { - "name": "進度圖表", - "type": "Chart", - "interaction": "顯示複習數據", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_DialogueAnalysis", - "name": "對話分析面板", - "type": "Modal", - "goal": "提供AI對話分析結果", - "interaction": "用戶查看分析建議", - "components": [ - { - "name": "分析結果", - "type": "Text", - "interaction": "顯示AI分析", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "關閉按鈕", - "type": "Button", - "interaction": "關閉分析面板", - "action": "關閉modal", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_FeedbackPanel", - "name": "回饋建議面板", - "type": "Modal", - "goal": "顯示對話改進建議", - "interaction": "用戶查看學習建議", - "components": [ - { - "name": "建議內容", - "type": "Text", - "interaction": "顯示改進建議", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ScoreDisplay", - "name": "評分顯示", - "type": "State", - "goal": "顯示三維度評分結果", - "interaction": "用戶查看評分詳情", - "components": [ - { - "name": "評分圖表", - "type": "Chart", - "interaction": "顯示評分分布", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ProgressChart", - "name": "學習進度圖表", - "type": "Dashboard", - "goal": "視覺化學習進度", - "interaction": "用戶追蹤學習成效", - "components": [ - { - "name": "進度圖表", - "type": "Chart", - "interaction": "顯示學習曲線", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ChallengeList", - "name": "挑戰列表", - "type": "List", - "goal": "展示限時對話挑戰", - "interaction": "用戶選擇挑戰項目", - "components": [ - { - "name": "挑戰項目", - "type": "ListItem", - "interaction": "選擇挑戰", - "action": "開始限時對話", - "navigation_view_id": "UI_TimedDialogue" - } - ] - }, - { - "view_id": "UI_TimedDialogue", - "name": "限時對話介面", - "type": "Detail", - "goal": "進行限時對話挑戰", - "interaction": "用戶在時限內完成對話", - "components": [ - { - "name": "倒計時器", - "type": "Text", - "interaction": "顯示剩餘時間", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "對話輸入", - "type": "InputField", - "interaction": "快速輸入回應", - "action": "提交對話", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ChallengeResult", - "name": "挑戰結果頁", - "type": "State", - "goal": "顯示挑戰完成結果", - "interaction": "用戶查看挑戰成績", - "components": [ - { - "name": "結果顯示", - "type": "Text", - "interaction": "顯示挑戰成績", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "再次挑戰按鈕", - "type": "Button", - "interaction": "重新挑戰", - "action": "返回挑戰", - "navigation_view_id": "UI_ChallengeList" - } - ] - }, - { - "view_id": "UI_AchievementList", - "name": "成就列表", - "type": "List", - "goal": "展示所有成就項目", - "interaction": "用戶瀏覽成就進度", - "components": [ - { - "name": "成就項目", - "type": "ListItem", - "interaction": "查看成就詳情", - "action": "顯示詳細資訊", - "navigation_view_id": "UI_AchievementDetail" - }, - { - "name": "成就徽章", - "type": "Badge", - "interaction": "顯示完成狀態", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_AchievementDetail", - "name": "成就詳情", - "type": "Detail", - "goal": "顯示成就要求和進度", - "interaction": "用戶了解成就條件", - "components": [ - { - "name": "成就描述", - "type": "Text", - "interaction": "顯示成就要求", - "action": "無互動", - "navigation_view_id": null - }, - { - "name": "進度條", - "type": "Progress", - "interaction": "顯示完成進度", - "action": "無互動", - "navigation_view_id": null - } - ] - }, { "view_id": "UI_BadgeCollection", "name": "徽章收藏", @@ -735,62 +338,1813 @@ ] }, { - "view_id": "UI_ContentStore", - "name": "內容商店", - "type": "List", - "goal": "展示可購買的學習內容", - "interaction": "用戶瀏覽和購買內容", + "view_id": "UI_Login_Main", + "name": "登入主頁面", + "type": "Form", + "goal": "用戶登入應用程式", + "interaction": "輸入帳號密碼或使用社群登入", "components": [ { - "name": "內容卡片", - "type": "Card", - "interaction": "選擇購買項目", - "action": "確認購買", - "navigation_view_id": "UI_PurchaseConfirm" + "name": "帳號輸入框", + "type": "InputField", + "interaction": "輸入帳號", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "密碼輸入框", + "type": "InputField", + "interaction": "輸入密碼", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "登入按鈕", + "type": "Button", + "interaction": "點擊登入", + "action": "驗證並登入", + "navigation_view_id": null + }, + { + "name": "Apple 登入按鈕", + "type": "Button", + "interaction": "Apple ID 登入", + "action": "社群登入", + "navigation_view_id": null + }, + { + "name": "Google 登入按鈕", + "type": "Button", + "interaction": "Google 帳號登入", + "action": "社群登入", + "navigation_view_id": null + }, + { + "name": "註冊按鈕", + "type": "Button", + "interaction": "前往註冊", + "action": "導航到註冊頁", + "navigation_view_id": "UI_SignUp_Main" + }, + { + "name": "忘記密碼", + "type": "Button", + "interaction": "重設密碼", + "action": "導航到密碼重設", + "navigation_view_id": "UI_PasswordReset_Form" } ] }, { - "view_id": "UI_PurchaseConfirm", - "name": "購買確認", - "type": "Modal", - "goal": "確認內容購買", - "interaction": "用戶確認購買決定", + "view_id": "UI_SignUp_Main", + "name": "註冊主頁面", + "type": "Form", + "goal": "新用戶註冊帳號", + "interaction": "填寫註冊資訊", "components": [ + { + "name": "註冊表單", + "type": "Form", + "interaction": "填寫用戶資料", + "action": "提交註冊", + "navigation_view_id": "UI_GuestIntro_Main" + } + ] + }, + { + "view_id": "UI_PasswordReset_Form", + "name": "密碼重設表單", + "type": "Form", + "goal": "重設用戶密碼", + "interaction": "輸入重設資訊", + "components": [ + { + "name": "電子郵件輸入", + "type": "InputField", + "interaction": "輸入註冊信箱", + "action": "發送重設連結", + "navigation_view_id": "UI_PasswordReset_Popup" + } + ] + }, + { + "view_id": "UI_PasswordReset_Popup", + "name": "密碼重設確認彈窗", + "type": "Modal", + "goal": "確認密碼重設請求", + "interaction": "確認重設操作", + "components": [ + { + "name": "確認訊息", + "type": "Text", + "interaction": "顯示重設狀態", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_UserAccount_List", + "name": "用戶帳號列表", + "type": "List", + "goal": "管理多個用戶帳號", + "interaction": "選擇或切換帳號", + "components": [ + { + "name": "帳號項目", + "type": "ListItem", + "interaction": "選擇帳號", + "action": "切換帳號", + "navigation_view_id": "UI_UserAccount_Option" + } + ] + }, + { + "view_id": "UI_UserAccount_Option", + "name": "帳號選項頁面", + "type": "Menu", + "goal": "提供帳號管理選項", + "interaction": "選擇帳號操作", + "components": [ + { + "name": "帳號選項", + "type": "MenuItem", + "interaction": "選擇操作", + "action": "執行帳號操作", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_GuestIntro_Main", + "name": "訪客引導主頁面", + "type": "Wizard", + "goal": "引導新用戶了解應用程式", + "interaction": "瀏覽應用程式介紹", + "components": [ + { + "name": "介紹內容", + "type": "Text", + "interaction": "閱讀應用介紹", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "開始設定按鈕", + "type": "Button", + "interaction": "開始個人化設定", + "action": "前往設定流程", + "navigation_view_id": "UI_GuestIntro_FormPurpose" + } + ] + }, + { + "view_id": "UI_GuestIntro_FormPurpose", + "name": "學習目的設定表單", + "type": "Form", + "goal": "設定用戶學習目的", + "interaction": "選擇學習目標", + "components": [ + { + "name": "目的選項", + "type": "RadioButton", + "interaction": "選擇學習目的", + "action": "記錄選擇", + "navigation_view_id": "UI_GuestIntro_FormLevel" + } + ] + }, + { + "view_id": "UI_GuestIntro_FormLevel", + "name": "語言程度設定表單", + "type": "Form", + "goal": "設定用戶語言程度", + "interaction": "選擇當前語言能力", + "components": [ + { + "name": "程度選項", + "type": "RadioButton", + "interaction": "選擇語言程度", + "action": "記錄選擇", + "navigation_view_id": "UI_GuestIntro_FormTimeSlot" + } + ] + }, + { + "view_id": "UI_GuestIntro_FormTimeSlot", + "name": "學習時間設定表單", + "type": "Form", + "goal": "設定偏好學習時段", + "interaction": "選擇學習時間", + "components": [ + { + "name": "時段選項", + "type": "RadioButton", + "interaction": "選擇時間段", + "action": "記錄選擇", + "navigation_view_id": "UI_GuestIntro_FormFrequency" + } + ] + }, + { + "view_id": "UI_GuestIntro_FormFrequency", + "name": "學習頻率設定表單", + "type": "Form", + "goal": "設定學習頻率偏好", + "interaction": "選擇學習頻率", + "components": [ + { + "name": "頻率選項", + "type": "RadioButton", + "interaction": "選擇學習頻率", + "action": "記錄選擇", + "navigation_view_id": "UI_GuestIntro_Notice" + } + ] + }, + { + "view_id": "UI_GuestIntro_Notice", + "name": "引導流程提醒", + "type": "State", + "goal": "提供重要使用提醒", + "interaction": "閱讀使用須知", + "components": [ + { + "name": "提醒內容", + "type": "Text", + "interaction": "閱讀須知", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "完成按鈕", + "type": "Button", + "interaction": "完成設定", + "action": "前往結果頁", + "navigation_view_id": "UI_GuestIntro_Result" + } + ] + }, + { + "view_id": "UI_GuestIntro_Result", + "name": "引導流程結果", + "type": "State", + "goal": "顯示個人化設定結果", + "interaction": "查看個人化建議", + "components": [ + { + "name": "建議內容", + "type": "Text", + "interaction": "查看學習建議", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "開始學習按鈕", + "type": "Button", + "interaction": "開始使用應用程式", + "action": "進入主應用", + "navigation_view_id": "UI_ChallengeLevel_Map" + } + ] + }, + { + "view_id": "UI_PersonalCenter_SelfMain", + "name": "個人中心主頁面", + "type": "Dashboard", + "goal": "顯示用戶個人資訊和學習狀態", + "interaction": "查看個人統計和設定", + "components": [ + { + "name": "用戶頭像", + "type": "Avatar", + "interaction": "顯示用戶頭像", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "學習統計", + "type": "Chart", + "interaction": "顯示學習數據", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "設定按鈕", + "type": "Button", + "interaction": "進入設定頁面", + "action": "導航到設定", + "navigation_view_id": "UI_PersonalCenter_Settings" + } + ] + }, + { + "view_id": "UI_SocialRanking_Main", + "name": "社群排行榜主頁面", + "type": "List", + "goal": "顯示用戶學習排名", + "interaction": "查看排行榜排名", + "components": [ + { + "name": "排名項目", + "type": "ListItem", + "interaction": "查看排名詳情", + "action": "顯示排名詳情", + "navigation_view_id": "UI_RankingDetail" + } + ] + }, + { + "view_id": "UI_LanguageLevel_Main", + "name": "語言程度測試主頁面", + "type": "Form", + "goal": "進行語言程度評估", + "interaction": "完成語言程度測試", + "components": [ + { + "name": "測試題目", + "type": "Form", + "interaction": "回答測試題目", + "action": "提交答案", + "navigation_view_id": "UI_LanguageLevel_Result" + } + ] + }, + { + "view_id": "UI_LanguageLevel_Result", + "name": "語言程度測試結果", + "type": "State", + "goal": "顯示語言程度評估結果", + "interaction": "查看程度分析", + "components": [ + { + "name": "程度結果", + "type": "Text", + "interaction": "顯示程度等級", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "進入學習流程", + "action": "導航到主頁", + "navigation_view_id": "UI_ChallengeLevel_Map" + } + ] + }, + { + "view_id": "UI_LevelResult_SuccessResult", + "name": "關卡成功結果頁面", + "type": "State", + "goal": "顯示成功完成關卡的結果", + "interaction": "查看成功結果和獎勵", + "components": [ + { + "name": "成功訊息", + "type": "Text", + "interaction": "顯示成功提示", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "獎勵顯示", + "type": "Text", + "interaction": "顯示獲得獎勵", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一關", + "action": "進入下一關卡", + "navigation_view_id": "UI_ChallengeLevel_Map" + } + ] + }, + { + "view_id": "UI_LevelResult_FailResult", + "name": "關卡失敗結果頁面", + "type": "State", + "goal": "顯示挑戰失敗結果", + "interaction": "查看失敗原因和重試選項", + "components": [ + { + "name": "失敗訊息", + "type": "Text", + "interaction": "顯示失敗原因", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "重試按鈕", + "type": "Button", + "interaction": "重新挑戰", + "action": "重新開始關卡", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ChallengeLevel_Map", + "name": "挑戰關卡地圖", + "type": "Dashboard", + "goal": "顯示學習進度和可用關卡", + "interaction": "選擇關卡進行挑戰", + "components": [ + { + "name": "關卡節點", + "type": "Button", + "interaction": "點擊進入關卡", + "action": "開始關卡挑戰", + "navigation_view_id": "UI_ChallengeLevel_ChoosePopup" + }, + { + "name": "進度指示器", + "type": "Progress", + "interaction": "顯示總體進度", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ChallengeLevel_ChoosePopup", + "name": "挑戰關卡選擇彈窗", + "type": "Modal", + "goal": "讓用戶選擇關卡難度或模式", + "interaction": "選擇挑戰參數", + "components": [ + { + "name": "難度選項", + "type": "RadioButton", + "interaction": "選擇難度等級", + "action": "設定挑戰參數", + "navigation_view_id": "UI_ScenarioDialog_Scene" + }, + { + "name": "開始按鈕", + "type": "Button", + "interaction": "確認開始挑戰", + "action": "進入場景對話", + "navigation_view_id": "UI_ScenarioDialog_Scene" + } + ] + }, + { + "view_id": "UI_ScenarioDialog_Scene", + "name": "場景對話主介面", + "type": "Detail", + "goal": "提供沉浸式情境對話練習", + "interaction": "進行即時對話練習", + "components": [ + { + "name": "場景描述", + "type": "Text", + "interaction": "顯示場景背景", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "對話輸入區", + "type": "InputField", + "interaction": "輸入對話內容", + "action": "發送對話", + "navigation_view_id": "UI_ScenarioDialog_ReplyResult" + }, + { + "name": "語音輸入按鈕", + "type": "Button", + "interaction": "語音輸入對話", + "action": "錄製語音", + "navigation_view_id": null + }, + { + "name": "幫助按鈕", + "type": "Button", + "interaction": "獲得對話提示", + "action": "顯示回覆指南", + "navigation_view_id": "UI_ScenarioDialog_ReplyGuide" + } + ] + }, + { + "view_id": "UI_ScenarioDialog_ReplyGuide", + "name": "對話回覆指南", + "type": "Modal", + "goal": "提供對話回覆建議和範例", + "interaction": "查看回覆建議", + "components": [ + { + "name": "建議內容", + "type": "Text", + "interaction": "顯示回覆建議", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "範例對話", + "type": "Text", + "interaction": "顯示範例回應", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ScenarioDialog_ReplyResult", + "name": "對話回覆結果", + "type": "State", + "goal": "顯示對話回覆的評估結果", + "interaction": "查看回覆評分和建議", + "components": [ + { + "name": "評分顯示", + "type": "Chart", + "interaction": "顯示三維度評分", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "改進建議", + "type": "Text", + "interaction": "顯示改進建議", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續對話按鈕", + "type": "Button", + "interaction": "繼續場景對話", + "action": "回到對話界面", + "navigation_view_id": "UI_ScenarioDialog_Scene" + } + ] + }, + { + "view_id": "UI_VocabIntro_CardIntro", + "name": "詞彙介紹卡片", + "type": "Detail", + "goal": "介紹新詞彙的含義和用法", + "interaction": "學習新詞彙", + "components": [ + { + "name": "詞彙卡片", + "type": "Card", + "interaction": "查看詞彙詳情", + "action": "翻轉查看解釋", + "navigation_view_id": null + }, + { + "name": "下一個詞彙按鈕", + "type": "Button", + "interaction": "繼續學習", + "action": "進入下一詞彙", + "navigation_view_id": "UI_VocabIntro_Choice" + } + ] + }, + { + "view_id": "UI_VocabIntro_Choice", + "name": "詞彙選擇練習", + "type": "Form", + "goal": "測試詞彙理解度", + "interaction": "選擇正確答案", + "components": [ + { + "name": "選擇題", + "type": "RadioButton", + "interaction": "選擇正確選項", + "action": "提交答案", + "navigation_view_id": "UI_VocabIntro_ChoiceResult" + } + ] + }, + { + "view_id": "UI_VocabReview_Main", + "name": "詞彙複習主頁面", + "type": "Detail", + "goal": "進行間隔複習練習", + "interaction": "複習已學詞彙", + "components": [ + { + "name": "複習卡片", + "type": "Card", + "interaction": "測試詞彙記憶", + "action": "標記掌握程度", + "navigation_view_id": null + }, + { + "name": "完成進度", + "type": "Progress", + "interaction": "顯示複習進度", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ItemStore_Main", + "name": "道具商店主頁面", + "type": "List", + "goal": "展示可購買的遊戲道具", + "interaction": "瀏覽和購買道具", + "components": [ + { + "name": "道具分類", + "type": "Tab", + "interaction": "切換道具類別", + "action": "過濾道具類型", + "navigation_view_id": null + }, + { + "name": "道具卡片", + "type": "Card", + "interaction": "查看道具詳情", + "action": "選擇購買道具", + "navigation_view_id": "UI_ItemStore_ConfirmPopup" + }, + { + "name": "貨幣顯示", + "type": "Text", + "interaction": "顯示當前貨幣", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ItemStore_ConfirmPopup", + "name": "道具購買確認彈窗", + "type": "Modal", + "goal": "確認道具購買決定", + "interaction": "確認或取消購買", + "components": [ + { + "name": "道具詳情", + "type": "Text", + "interaction": "顯示購買物品資訊", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "價格顯示", + "type": "Text", + "interaction": "顯示道具價格", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "確認購買按鈕", + "type": "Button", + "interaction": "確認購買道具", + "action": "處理購買交易", + "navigation_view_id": null + }, + { + "name": "取消按鈕", + "type": "Button", + "interaction": "取消購買", + "action": "關閉彈窗", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_Subscription_Result", + "name": "訂閱結果頁面", + "type": "State", + "goal": "顯示訂閱購買結果", + "interaction": "查看訂閱狀態", + "components": [ + { + "name": "訂閱結果", + "type": "Text", + "interaction": "顯示訂閱成功或失敗", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "訂閱詳情", + "type": "Text", + "interaction": "顯示訂閱計劃詳情", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "返回主界面", + "action": "導航到主頁", + "navigation_view_id": "UI_ChallengeLevel_Map" + } + ] + }, + { + "view_id": "UI_ChallengeLevel_ExitComfirmPopup", + "name": "退出關卡確認彈窗", + "type": "Modal", + "goal": "確認是否退出當前關卡", + "interaction": "用戶確認或取消退出", + "components": [ + { + "name": "確認訊息", + "type": "Text", + "interaction": "顯示退出提醒", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "確認退出按鈕", + "type": "Button", + "interaction": "確認退出關卡", + "action": "退出關卡", + "navigation_view_id": "UI_ChallengeLevel_Map" + }, + { + "name": "繼續關卡按鈕", + "type": "Button", + "interaction": "繼續當前關卡", + "action": "關閉彈窗", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_CorrectionResult", + "name": "對話訂正結果頁面", + "type": "State", + "goal": "顯示對話訂正結果和建議", + "interaction": "查看訂正結果", + "components": [ + { + "name": "訂正結果", + "type": "Text", + "interaction": "顯示修正內容", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續學習", + "action": "進入下一階段", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_DialogScoreSummary", + "name": "對話評分總結", + "type": "State", + "goal": "顯示詳細的對話評分分析", + "interaction": "查看評分詳情", + "components": [ + { + "name": "評分圖表", + "type": "Chart", + "interaction": "顯示各項評分", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一步", + "action": "前往下一階段", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_FailResult2", + "name": "關卡失敗結果頁面變體2", + "type": "State", + "goal": "顯示挑戰失敗結果(變體2)", + "interaction": "查看失敗原因和重試選項", + "components": [ + { + "name": "失敗訊息", + "type": "Text", + "interaction": "顯示失敗原因", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "重試按鈕", + "type": "Button", + "interaction": "重新挑戰", + "action": "重新開始關卡", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_RewardConfirm", + "name": "獎勵確認頁面", + "type": "State", + "goal": "確認獲得獎勵", + "interaction": "查看獲得的獎勵", + "components": [ + { + "name": "獎勵顯示", + "type": "Text", + "interaction": "顯示獲得獎勵", + "action": "無互動", + "navigation_view_id": null + }, { "name": "確認按鈕", "type": "Button", - "interaction": "確認購買", - "action": "處理購買", - "navigation_view_id": "UI_PurchasedContent" + "interaction": "確認領取獎勵", + "action": "領取獎勵", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_ScoreSummary", + "name": "分數總結頁面", + "type": "State", + "goal": "顯示學習分數總結", + "interaction": "查看詳細分數", + "components": [ + { + "name": "分數圖表", + "type": "Chart", + "interaction": "顯示分數明細", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一步", + "action": "前往下一階段", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_ScoreSummary2", + "name": "分數總結頁面變體2", + "type": "State", + "goal": "顯示學習分數總結(變體2)", + "interaction": "查看詳細分數", + "components": [ + { + "name": "分數圖表", + "type": "Chart", + "interaction": "顯示分數明細", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一步", + "action": "前往下一階段", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_SmallReward", + "name": "小獎勵頁面", + "type": "State", + "goal": "顯示小獎勵獲得", + "interaction": "查看小獎勵", + "components": [ + { + "name": "獎勵顯示", + "type": "Text", + "interaction": "顯示獲得小獎勵", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續學習", + "action": "繼續下一關", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_LevelResult_SuccessResult2", + "name": "關卡成功結果頁面變體2", + "type": "State", + "goal": "顯示成功完成關卡的結果(變體2)", + "interaction": "查看成功結果和獎勵", + "components": [ + { + "name": "成功訊息", + "type": "Text", + "interaction": "顯示成功提示", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "獎勵顯示", + "type": "Text", + "interaction": "顯示獲得獎勵", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一關", + "action": "進入下一關卡", + "navigation_view_id": "UI_ChallengeLevel_Map" + } + ] + }, + { + "view_id": "UI_PersonalCenter_FriendList", + "name": "好友列表頁面", + "type": "List", + "goal": "顯示用戶的好友列表", + "interaction": "查看和管理好友", + "components": [ + { + "name": "好友項目", + "type": "ListItem", + "interaction": "查看好友詳情", + "action": "開啟好友資料", + "navigation_view_id": "UI_PersonalCenter_OtherUserMain" + }, + { + "name": "搜尋好友按鈕", + "type": "Button", + "interaction": "搜尋新好友", + "action": "開啟好友搜尋", + "navigation_view_id": "UI_PersonalCenter_FriendSearch" + } + ] + }, + { + "view_id": "UI_PersonalCenter_FriendMain", + "name": "好友主頁面", + "type": "Dashboard", + "goal": "好友功能主界面", + "interaction": "管理好友關係", + "components": [ + { + "name": "好友列表入口", + "type": "Button", + "interaction": "查看好友列表", + "action": "進入好友列表", + "navigation_view_id": "UI_PersonalCenter_FriendList" + }, + { + "name": "好友邀請", + "type": "Button", + "interaction": "邀請新好友", + "action": "分享邀請連結", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_PersonalCenter_FriendSearch", + "name": "好友搜尋頁面", + "type": "Form", + "goal": "搜尋和添加新好友", + "interaction": "搜尋用戶並發送好友邀請", + "components": [ + { + "name": "搜尋輸入框", + "type": "InputField", + "interaction": "輸入用戶名或ID", + "action": "搜尋用戶", + "navigation_view_id": null + }, + { + "name": "搜尋結果", + "type": "ListItem", + "interaction": "查看搜尋結果", + "action": "發送好友邀請", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_PersonalCenter_GuestPrompt", + "name": "訪客提示頁面", + "type": "State", + "goal": "提醒訪客用戶註冊登入", + "interaction": "引導訪客註冊", + "components": [ + { + "name": "提示訊息", + "type": "Text", + "interaction": "顯示註冊提示", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "註冊按鈕", + "type": "Button", + "interaction": "前往註冊", + "action": "開啟註冊流程", + "navigation_view_id": "UI_SignUp_Main" + }, + { + "name": "登入按鈕", + "type": "Button", + "interaction": "前往登入", + "action": "開啟登入頁面", + "navigation_view_id": "UI_Login_Main" + } + ] + }, + { + "view_id": "UI_PersonalCenter_Locked", + "name": "個人中心鎖定頁面", + "type": "State", + "goal": "顯示功能鎖定狀態", + "interaction": "提示解鎖條件", + "components": [ + { + "name": "鎖定提示", + "type": "Text", + "interaction": "顯示解鎖條件", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "解鎖按鈕", + "type": "Button", + "interaction": "完成解鎖任務", + "action": "開始解鎖流程", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_PersonalCenter_OtherUserMain", + "name": "他人個人資料頁面", + "type": "Detail", + "goal": "顯示其他用戶的個人資料", + "interaction": "查看他人學習狀態", + "components": [ + { + "name": "用戶頭像", + "type": "Avatar", + "interaction": "顯示用戶頭像", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "學習統計", + "type": "Chart", + "interaction": "顯示公開學習數據", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "挑戰按鈕", + "type": "Button", + "interaction": "向該用戶發起挑戰", + "action": "開始競賽挑戰", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_PersonalCenter_Settings", + "name": "個人設定頁面", + "type": "Form", + "goal": "管理個人設定和偏好", + "interaction": "修改個人設定", + "components": [ + { + "name": "個人資料設定", + "type": "Form", + "interaction": "修改個人資料", + "action": "更新設定", + "navigation_view_id": null + }, + { + "name": "學習偏好", + "type": "Form", + "interaction": "調整學習偏好", + "action": "更新偏好", + "navigation_view_id": null + }, + { + "name": "通知設定", + "type": "Form", + "interaction": "管理通知偏好", + "action": "更新通知設定", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_SocialRanking_GuestPrompt", + "name": "排行榜訪客提示", + "type": "State", + "goal": "提醒訪客用戶註冊以查看排行榜", + "interaction": "引導訪客註冊", + "components": [ + { + "name": "提示訊息", + "type": "Text", + "interaction": "顯示註冊提示", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "註冊按鈕", + "type": "Button", + "interaction": "前往註冊", + "action": "開啟註冊流程", + "navigation_view_id": "UI_SignUp_Main" + } + ] + }, + { + "view_id": "UI_BonusMission_Main", + "name": "額外任務主頁面", + "type": "Dashboard", + "goal": "顯示可用的額外任務", + "interaction": "選擇並完成額外任務", + "components": [ + { + "name": "任務列表", + "type": "List", + "interaction": "查看任務詳情", + "action": "選擇任務", + "navigation_view_id": null + }, + { + "name": "獎勵預覽", + "type": "Text", + "interaction": "顯示任務獎勵", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ChallengeLevel_ChoosePopupLock", + "name": "關卡選擇彈窗(鎖定狀態)", + "type": "Modal", + "goal": "顯示關卡鎖定狀態和解鎖條件", + "interaction": "查看解鎖條件", + "components": [ + { + "name": "鎖定提示", + "type": "Text", + "interaction": "顯示解鎖條件", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "解鎖任務按鈕", + "type": "Button", + "interaction": "前往解鎖任務", + "action": "開始解鎖流程", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_PlayLife_Main", + "name": "遊戲生活模擬主頁面", + "type": "Dashboard", + "goal": "提供虛擬生活模擬體驗", + "interaction": "管理虛擬角色和活動", + "components": [ + { + "name": "角色狀態", + "type": "Avatar", + "interaction": "查看角色狀態", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "活動選項", + "type": "Button", + "interaction": "選擇活動", + "action": "執行活動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_PresonalCenter_dd_Detail", + "name": "個人中心詳細資料", + "type": "Detail", + "goal": "顯示詳細個人學習資料", + "interaction": "查看詳細統計", + "components": [ + { + "name": "詳細統計", + "type": "Chart", + "interaction": "顯示學習詳細數據", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ScenarioDialog_CostConfirmPopup", + "name": "對話成本確認彈窗", + "type": "Modal", + "goal": "確認對話功能使用成本", + "interaction": "確認或取消使用", + "components": [ + { + "name": "成本說明", + "type": "Text", + "interaction": "顯示使用成本", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "確認使用按鈕", + "type": "Button", + "interaction": "確認付費使用", + "action": "扣除費用並繼續", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ScenarioDialog_GoalDetail", + "name": "對話目標詳情頁面", + "type": "Detail", + "goal": "顯示對話任務的詳細目標", + "interaction": "了解任務要求", + "components": [ + { + "name": "目標描述", + "type": "Text", + "interaction": "顯示任務目標", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "開始對話按鈕", + "type": "Button", + "interaction": "開始對話任務", + "action": "進入對話界面", + "navigation_view_id": "UI_ScenarioDialog_Scene" + } + ] + }, + { + "view_id": "UI_ScenarioDialog_InsufficientPopup", + "name": "資源不足提醒彈窗", + "type": "Modal", + "goal": "提示用戶資源不足", + "interaction": "查看購買或獲取資源選項", + "components": [ + { + "name": "不足提示", + "type": "Text", + "interaction": "顯示資源不足訊息", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "購買按鈕", + "type": "Button", + "interaction": "前往購買資源", + "action": "開啟商店", + "navigation_view_id": "UI_ItemStore_Main" + } + ] + }, + { + "view_id": "UI_ScenarioDialog_KeywordDetail", + "name": "關鍵詞詳情頁面", + "type": "Detail", + "goal": "顯示關鍵詞的詳細解釋", + "interaction": "學習關鍵詞用法", + "components": [ + { + "name": "詞彙解釋", + "type": "Text", + "interaction": "顯示詞彙含義", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "使用範例", + "type": "Text", + "interaction": "顯示使用範例", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ScenarioDialog_ReplyInput", + "name": "對話回覆輸入頁面", + "type": "Form", + "goal": "提供對話輸入界面", + "interaction": "輸入對話回覆", + "components": [ + { + "name": "輸入框", + "type": "InputField", + "interaction": "輸入回覆內容", + "action": "發送回覆", + "navigation_view_id": "UI_ScenarioDialog_ReplyResult" + }, + { + "name": "語音輸入", + "type": "Button", + "interaction": "語音輸入", + "action": "錄製語音", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ScenarioDialog_RoleDetail", + "name": "角色詳情頁面", + "type": "Detail", + "goal": "顯示對話角色的背景信息", + "interaction": "了解角色特點", + "components": [ + { + "name": "角色描述", + "type": "Text", + "interaction": "顯示角色背景", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "角色頭像", + "type": "Avatar", + "interaction": "顯示角色形象", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_TimeGate_ConfirmUseTicket", + "name": "時間門票使用確認", + "type": "Modal", + "goal": "確認使用時間門票", + "interaction": "確認或取消使用門票", + "components": [ + { + "name": "門票信息", + "type": "Text", + "interaction": "顯示門票詳情", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "確認使用按鈕", + "type": "Button", + "interaction": "確認使用門票", + "action": "消耗門票並繼續", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_VocabFluency_MatchImageResult", + "name": "詞彙流暢度圖像配對結果", + "type": "State", + "goal": "顯示圖像配對練習結果", + "interaction": "查看配對結果和評分", + "components": [ + { + "name": "結果顯示", + "type": "Text", + "interaction": "顯示配對結果", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續練習按鈕", + "type": "Button", + "interaction": "繼續下一個練習", + "action": "進入下一練習", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_VocabFluency_MatchImageToWord", + "name": "詞彙流暢度圖像配對", + "type": "Form", + "goal": "進行圖像與詞彙配對練習", + "interaction": "配對圖像與詞彙", + "components": [ + { + "name": "圖像選項", + "type": "Image", + "interaction": "選擇對應圖像", + "action": "配對選擇", + "navigation_view_id": "UI_VocabFluency_MatchImageResult" + }, + { + "name": "詞彙選項", + "type": "Button", + "interaction": "選擇對應詞彙", + "action": "配對選擇", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_VocabFluency_SentenceReorder", + "name": "句子重組練習", + "type": "Form", + "goal": "進行句子重組練習", + "interaction": "重新排列句子順序", + "components": [ + { + "name": "詞彙卡片", + "type": "Card", + "interaction": "拖拽重組句子", + "action": "排列順序", + "navigation_view_id": "UI_VocabFluency_SentenceResult" + } + ] + }, + { + "view_id": "UI_VocabFluency_SentenceResult", + "name": "句子重組結果", + "type": "State", + "goal": "顯示句子重組結果", + "interaction": "查看重組結果和正確答案", + "components": [ + { + "name": "結果評價", + "type": "Text", + "interaction": "顯示重組結果", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "正確答案", + "type": "Text", + "interaction": "顯示正確句子", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一題", + "action": "進入下一練習", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_VocabIntro_ChoiceResult", + "name": "詞彙選擇結果頁面", + "type": "State", + "goal": "顯示詞彙選擇練習結果", + "interaction": "查看答案正確性", + "components": [ + { + "name": "結果顯示", + "type": "Text", + "interaction": "顯示答題結果", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "解釋說明", + "type": "Text", + "interaction": "顯示答案解釋", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續學習按鈕", + "type": "Button", + "interaction": "繼續下一個詞彙", + "action": "進入下一階段", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_DialogCorrection_FluencyExplanation_Play", + "name": "流暢度訂正解釋播放", + "type": "Detail", + "goal": "播放流暢度訂正解釋", + "interaction": "聆聽和學習流暢度改進", + "components": [ + { + "name": "音頻播放器", + "type": "Audio", + "interaction": "播放解釋音頻", + "action": "播放音頻", + "navigation_view_id": null + }, + { + "name": "文字解釋", + "type": "Text", + "interaction": "顯示解釋文字", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "重試按鈕", + "type": "Button", + "interaction": "重新練習", + "action": "開始重試", + "navigation_view_id": "UI_DialogCorrection_FluencyRetry_Play" + } + ] + }, + { + "view_id": "UI_DialogCorrection_FluencyPass_Result", + "name": "流暢度訂正通過結果", + "type": "State", + "goal": "顯示流暢度訂正通過結果", + "interaction": "查看通過評價", + "components": [ + { + "name": "通過訊息", + "type": "Text", + "interaction": "顯示通過提示", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一階段", + "action": "進入下一關卡", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_DialogCorrection_FluencyRetry_Play", + "name": "流暢度訂正重試播放", + "type": "Form", + "goal": "進行流暢度訂正重試練習", + "interaction": "重新練習流暢度", + "components": [ + { + "name": "練習輸入", + "type": "InputField", + "interaction": "輸入改進回覆", + "action": "提交回覆", + "navigation_view_id": "UI_DialogCorrection_FluencyPass_Result" + }, + { + "name": "語音輸入", + "type": "Button", + "interaction": "語音練習", + "action": "錄製語音", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_DialogCorrection_SyntaxExplanation_Play", + "name": "語法訂正解釋播放", + "type": "Detail", + "goal": "播放語法訂正解釋", + "interaction": "學習語法錯誤和改正", + "components": [ + { + "name": "音頻播放器", + "type": "Audio", + "interaction": "播放解釋音頻", + "action": "播放音頻", + "navigation_view_id": null + }, + { + "name": "語法解釋", + "type": "Text", + "interaction": "顯示語法解釋", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "重試按鈕", + "type": "Button", + "interaction": "重新練習", + "action": "開始重試", + "navigation_view_id": "UI_DialogCorrection_SyntaxRetry_Play" + } + ] + }, + { + "view_id": "UI_DialogCorrection_SyntaxPass_Result", + "name": "語法訂正通過結果", + "type": "State", + "goal": "顯示語法訂正通過結果", + "interaction": "查看通過評價", + "components": [ + { + "name": "通過訊息", + "type": "Text", + "interaction": "顯示通過提示", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "繼續按鈕", + "type": "Button", + "interaction": "繼續下一階段", + "action": "進入下一關卡", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_DialogCorrection_SyntaxRetry_Play", + "name": "語法訂正重試播放", + "type": "Form", + "goal": "進行語法訂正重試練習", + "interaction": "重新練習語法", + "components": [ + { + "name": "練習輸入", + "type": "InputField", + "interaction": "輸入改正回覆", + "action": "提交回覆", + "navigation_view_id": "UI_DialogCorrection_SyntaxPass_Result" + }, + { + "name": "語法提示", + "type": "Text", + "interaction": "顯示語法提示", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ChallengeLevel_ChoosePopup-1", + "name": "挑戰關卡選擇彈窗變體1", + "type": "Modal", + "goal": "讓用戶選擇關卡難度或模式(變體1)", + "interaction": "選擇挑戰參數", + "components": [ + { + "name": "難度選項", + "type": "RadioButton", + "interaction": "選擇難度等級", + "action": "設定挑戰參數", + "navigation_view_id": "UI_ScenarioDialog_Scene" + }, + { + "name": "開始按鈕", + "type": "Button", + "interaction": "確認開始挑戰", + "action": "進入場景對話", + "navigation_view_id": "UI_ScenarioDialog_Scene" + } + ] + }, + { + "view_id": "UI_ChallengeLevel_ChoosePopup-2", + "name": "挑戰關卡選擇彈窗變體2", + "type": "Modal", + "goal": "讓用戶選擇關卡難度或模式(變體2)", + "interaction": "選擇挑戰參數", + "components": [ + { + "name": "難度選項", + "type": "RadioButton", + "interaction": "選擇難度等級", + "action": "設定挑戰參數", + "navigation_view_id": "UI_ScenarioDialog_Scene" + }, + { + "name": "開始按鈕", + "type": "Button", + "interaction": "確認開始挑戰", + "action": "進入場景對話", + "navigation_view_id": "UI_ScenarioDialog_Scene" + } + ] + }, + { + "view_id": "UI_ReviewProgress", + "name": "複習進度頁面", + "type": "Dashboard", + "goal": "顯示詞彙複習進度", + "interaction": "查看複習統計", + "components": [ + { + "name": "進度圖表", + "type": "Chart", + "interaction": "顯示複習進度", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ReviewSchedule", + "name": "複習排程頁面", + "type": "Dashboard", + "goal": "顯示複習排程安排", + "interaction": "查看複習計劃", + "components": [ + { + "name": "排程列表", + "type": "List", + "interaction": "查看複習時間表", + "action": "無互動", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_ReviewCards", + "name": "複習卡片頁面", + "type": "Detail", + "goal": "顯示複習卡片界面", + "interaction": "進行卡片複習", + "components": [ + { + "name": "複習卡片", + "type": "Card", + "interaction": "翻轉卡片複習", + "action": "翻轉查看", + "navigation_view_id": null + } + ] + }, + { + "view_id": "UI_SubscriptionPlans", + "name": "訂閱方案頁面", + "type": "List", + "goal": "展示可用的訂閱方案", + "interaction": "選擇訂閱方案", + "components": [ + { + "name": "方案卡片", + "type": "Card", + "interaction": "查看方案詳情", + "action": "選擇方案", + "navigation_view_id": "UI_PaymentFlow" + } + ] + }, + { + "view_id": "UI_PaymentFlow", + "name": "付款流程頁面", + "type": "Form", + "goal": "處理付款流程", + "interaction": "完成付款操作", + "components": [ + { + "name": "付款表單", + "type": "Form", + "interaction": "輸入付款信息", + "action": "提交付款", + "navigation_view_id": "UI_Subscription_Result" } ] }, { "view_id": "UI_PurchasedContent", - "name": "已購買內容", + "name": "已購買內容頁面", "type": "List", - "goal": "管理已購買的學習內容", - "interaction": "用戶使用已購買內容", + "goal": "顯示用戶已購買的內容", + "interaction": "查看已購買內容", "components": [ { - "name": "內容項目", - "type": "ListItem", - "interaction": "開始學習", - "action": "使用內容", - "navigation_view_id": "UI_DialogueChat" + "name": "內容列表", + "type": "List", + "interaction": "查看已購內容", + "action": "開啟內容", + "navigation_view_id": null } ] }, { "view_id": "UI_AdOffer", - "name": "廣告獎勵提示", + "name": "廣告提供頁面", "type": "Modal", - "goal": "提示用戶觀看廣告獲得獎勵", - "interaction": "用戶選擇是否觀看廣告", + "goal": "提供觀看廣告獲得獎勵", + "interaction": "選擇觀看廣告", "components": [ { - "name": "觀看按鈕", + "name": "廣告提示", + "type": "Text", + "interaction": "顯示獎勵說明", + "action": "無互動", + "navigation_view_id": null + }, + { + "name": "觀看廣告按鈕", "type": "Button", "interaction": "開始觀看廣告", "action": "播放廣告", @@ -800,96 +2154,62 @@ }, { "view_id": "UI_AdViewing", - "name": "廣告播放", - "type": "State", + "name": "廣告播放頁面", + "type": "Detail", "goal": "播放廣告內容", - "interaction": "用戶觀看廣告", + "interaction": "觀看廣告", "components": [ { - "name": "廣告內容", - "type": "Image", - "interaction": "顯示廣告", - "action": "無互動", - "navigation_view_id": null + "name": "廣告播放器", + "type": "Video", + "interaction": "播放廣告視頻", + "action": "播放廣告", + "navigation_view_id": "UI_RewardClaim" } ] }, { "view_id": "UI_RewardClaim", - "name": "獎勵領取", + "name": "獎勵領取頁面", "type": "State", "goal": "領取廣告觀看獎勵", - "interaction": "用戶領取獎勵", + "interaction": "領取獎勵", "components": [ + { + "name": "獎勵顯示", + "type": "Text", + "interaction": "顯示獲得獎勵", + "action": "無互動", + "navigation_view_id": null + }, { "name": "領取按鈕", "type": "Button", - "interaction": "領取獎勵", - "action": "獲得獎勵", + "interaction": "確認領取獎勵", + "action": "領取獎勵", "navigation_view_id": null } ] }, { - "view_id": "UI_CorrectionPanel", - "name": "對話訂正面板", - "type": "Modal", - "goal": "顯示對話修正建議", - "interaction": "用戶學習正確表達", - "components": [ - { - "name": "訂正內容", - "type": "Text", - "interaction": "顯示正確表達", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ImprovedDialogue", - "name": "改進對話建議", + "view_id": "UI_TimedDialogue", + "name": "限時對話頁面", "type": "Detail", - "goal": "提供更好的對話表達方式", - "interaction": "用戶學習優化表達", + "goal": "進行限時對話挑戰", + "interaction": "在時限內完成對話", "components": [ { - "name": "改進建議", - "type": "Text", - "interaction": "顯示改進方案", + "name": "倒計時器", + "type": "Timer", + "interaction": "顯示剩餘時間", "action": "無互動", "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ReviewSchedule", - "name": "複習排程", - "type": "Dashboard", - "goal": "顯示個人化複習計劃", - "interaction": "用戶查看複習安排", - "components": [ + }, { - "name": "排程表", - "type": "Chart", - "interaction": "顯示複習時間", - "action": "無互動", - "navigation_view_id": null - } - ] - }, - { - "view_id": "UI_ReviewCards", - "name": "複習卡片", - "type": "Detail", - "goal": "進行間隔複習練習", - "interaction": "用戶進行記憶測試", - "components": [ - { - "name": "記憶卡片", - "type": "Card", - "interaction": "翻轉查看答案", - "action": "標記記憶程度", + "name": "對話輸入區", + "type": "InputField", + "interaction": "輸入對話回覆", + "action": "發送回覆", "navigation_view_id": null } ] @@ -897,7 +2217,7 @@ ], "data_sources": [ "UserProfile", - "Lesson", + "Lesson", "Dialogue", "Task", "TaskReward", diff --git a/docs/04_technical/user-flow-specification.md b/docs/04_technical/user-flow-specification.md new file mode 100644 index 0000000..9f6e571 --- /dev/null +++ b/docs/04_technical/user-flow-specification.md @@ -0,0 +1,316 @@ +# 用戶流程規格文件 (User Flow Specification) + +## 文件概述 + +本文件詳細定義了戲劇化英語學習應用程式的完整用戶流程,涵蓋從新用戶註冊到深度學習的所有互動路徑。基於83個UI定義和完整的功能模組架構,提供開發團隊實作用戶體驗的藍圖。 + +## 主要用戶角色 + +- **訪客用戶 (Guest)**: 未註冊/登入的用戶 +- **註冊用戶 (Registered)**: 已註冊但使用免費功能的用戶 +- **付費用戶 (Premium)**: 已購買訂閱或付費內容的用戶 + +## 核心用戶流程 + +### 1. 新用戶引導流程 (Onboarding Flow) + +```mermaid +graph TD + A[應用啟動] --> B{用戶狀態} + B -->|未登入| C[UI_Login_Main] + B -->|已登入| D[UI_ChallengeLevel_Map] + + C --> E[UI_SignUp_Main] + E --> F[UI_GuestIntro_Main] + F --> G[UI_GuestIntro_FormPurpose] + G --> H[UI_GuestIntro_FormLevel] + H --> I[UI_GuestIntro_FormTimeSlot] + I --> J[UI_GuestIntro_FormFrequency] + J --> K[UI_GuestIntro_Notice] + K --> L[UI_GuestIntro_Result] + L --> M[UI_LanguageLevel_Main] + M --> N[UI_LanguageLevel_Result] + N --> D + + C -->|忘記密碼| O[UI_PasswordReset_Form] + O --> P[UI_PasswordReset_Popup] +``` + +#### 流程說明 + +1. **應用啟動檢查** + - 檢查用戶登入狀態 + - 已登入用戶直接進入主學習地圖 + - 未登入用戶進入登入頁面 + +2. **登入/註冊階段** + - `UI_Login_Main`: 支援帳密登入、Apple ID、Google登入 + - `UI_SignUp_Main`: 新用戶註冊表單 + - `UI_PasswordReset_Form/Popup`: 密碼重設流程 + +3. **個人化設定階段** + - `UI_GuestIntro_FormPurpose`: 學習目的選擇 + - `UI_GuestIntro_FormLevel`: 當前語言程度 + - `UI_GuestIntro_FormTimeSlot`: 偏好學習時段 + - `UI_GuestIntro_FormFrequency`: 學習頻率設定 + - `UI_GuestIntro_Notice`: 使用須知提醒 + - `UI_GuestIntro_Result`: 個人化建議結果 + +4. **語言程度測試** + - `UI_LanguageLevel_Main`: 進行程度評估測試 + - `UI_LanguageLevel_Result`: 顯示測試結果和建議 + +### 2. 學習核心流程 (Learning Core Flow) + +```mermaid +graph TD + A[UI_ChallengeLevel_Map] --> B{關卡狀態} + B -->|可用關卡| C[UI_ChallengeLevel_ChoosePopup] + B -->|鎖定關卡| D[UI_ChallengeLevel_ChoosePopupLock] + + C --> E[UI_ScenarioDialog_GoalDetail] + E --> F[UI_ScenarioDialog_Scene] + + F --> G{對話互動} + G -->|文字輸入| H[UI_ScenarioDialog_ReplyInput] + G -->|需要幫助| I[UI_ScenarioDialog_ReplyGuide] + G -->|查看關鍵詞| J[UI_ScenarioDialog_KeywordDetail] + G -->|查看角色| K[UI_ScenarioDialog_RoleDetail] + G -->|成本確認| L[UI_ScenarioDialog_CostConfirmPopup] + + H --> M[UI_ScenarioDialog_ReplyResult] + M --> N{評估結果} + + N -->|需要訂正| O[語法訂正流程] + N -->|通過| P[結果統計流程] + N -->|繼續對話| F + + O --> Q[UI_DialogCorrection_SyntaxExplanation_Play] + Q --> R[UI_DialogCorrection_SyntaxRetry_Play] + R --> S[UI_DialogCorrection_SyntaxPass_Result] + + P --> T[UI_LevelResult_ScoreSummary] + T --> U[UI_LevelResult_RewardConfirm] + U --> V[UI_LevelResult_SuccessResult] + V --> A +``` + +#### 流程說明 + +1. **關卡選擇階段** + - `UI_ChallengeLevel_Map`: 顯示學習地圖和進度 + - `UI_ChallengeLevel_ChoosePopup`: 選擇關卡難度和模式 + - `UI_ChallengeLevel_ChoosePopupLock`: 鎖定關卡的解鎖提示 + +2. **場景對話階段** + - `UI_ScenarioDialog_GoalDetail`: 顯示對話任務目標 + - `UI_ScenarioDialog_Scene`: 主要對話界面 + - 支援文字/語音輸入、提示請求、關鍵詞查詢 + +3. **AI評估與回饋** + - `UI_ScenarioDialog_ReplyResult`: 即時評分和建議 + - 三維度評分:語法、語意、流暢度 + - 根據表現決定後續流程 + +4. **訂正學習流程** + - 語法訂正:解釋 → 重試 → 通過確認 + - 流暢度訂正:類似語法訂正流程 + - 提供音頻解釋和實作練習 + +5. **成就與獎勵** + - 分數統計、獎勵確認、成功慶祝 + - 返回地圖繼續下一關卡 + +### 3. 詞彙學習流程 (Vocabulary Learning Flow) + +```mermaid +graph TD + A[詞彙學習入口] --> B{學習模式} + B -->|新詞介紹| C[UI_VocabIntro_CardIntro] + B -->|複習模式| D[UI_VocabReview_Main] + B -->|流暢度練習| E[UI_VocabFluency_MatchImageToWord] + + C --> F[UI_VocabIntro_Choice] + F --> G[UI_VocabIntro_ChoiceResult] + G --> H{繼續學習?} + H -->|是| C + H -->|完成| I[返回主流程] + + D --> J{複習完成?} + J -->|繼續| D + J -->|完成| K[UI_ReviewProgress] + + E --> L[UI_VocabFluency_MatchImageResult] + L --> M[UI_VocabFluency_SentenceReorder] + M --> N[UI_VocabFluency_SentenceResult] + N --> I +``` + +### 4. 社交與競爭流程 (Social & Competition Flow) + +```mermaid +graph TD + A[社交功能入口] --> B{用戶狀態} + B -->|訪客| C[UI_SocialRanking_GuestPrompt] + B -->|註冊用戶| D[UI_SocialRanking_Main] + + D --> E[UI_RankingDetail] + E --> F{競爭選項} + F -->|挑戰用戶| G[UI_TimedDialogue] + F -->|查看好友| H[UI_PersonalCenter_FriendMain] + + H --> I[UI_PersonalCenter_FriendList] + I --> J[UI_PersonalCenter_OtherUserMain] + + H --> K[UI_PersonalCenter_FriendSearch] + + G --> L[對話挑戰結果] + L --> M[UI_LevelResult_SuccessResult] +``` + +### 5. 商業化流程 (Monetization Flow) + +```mermaid +graph TD + A[商業功能觸發] --> B{觸發情境} + B -->|資源不足| C[UI_ScenarioDialog_InsufficientPopup] + B -->|主動購買| D[UI_ItemStore_Main] + B -->|訂閱服務| E[UI_SubscriptionPlans] + B -->|廣告獎勵| F[UI_AdOffer] + + C --> D + D --> G[UI_ItemStore_ConfirmPopup] + G --> H{購買確認} + H -->|確認| I[處理購買] + H -->|取消| J[返回商店] + + E --> K[UI_PaymentFlow] + K --> L[UI_Subscription_Result] + + F --> M[UI_AdViewing] + M --> N[UI_RewardClaim] + + I --> O[UI_PurchasedContent] + L --> P[返回主功能] + N --> P +``` + +### 6. 個人中心流程 (Personal Center Flow) + +```mermaid +graph TD + A[UI_PersonalCenter_SelfMain] --> B{功能選擇} + B -->|詳細統計| C[UI_PresonalCenter_dd_Detail] + B -->|個人設定| D[UI_PersonalCenter_Settings] + B -->|好友管理| E[UI_PersonalCenter_FriendMain] + B -->|訪客狀態| F[UI_PersonalCenter_GuestPrompt] + B -->|功能鎖定| G[UI_PersonalCenter_Locked] + + E --> H[UI_PersonalCenter_FriendList] + E --> I[UI_PersonalCenter_FriendSearch] + + H --> J[UI_PersonalCenter_OtherUserMain] + + F --> K[UI_Login_Main] +``` + +## 特殊流程處理 + +### 時間門票系統 + +```mermaid +graph TD + A[需要門票功能] --> B[UI_TimeGate_ConfirmUseTicket] + B --> C{確認使用} + C -->|確認| D[消耗門票繼續] + C -->|取消| E[返回上一頁] +``` + +### 額外任務系統 + +```mermaid +graph TD + A[UI_BonusMission_Main] --> B{任務狀態} + B -->|可完成| C[執行任務] + B -->|檢視獎勵| D[獎勵預覽] + C --> E[任務完成獎勵] +``` + +### 生活模擬系統 + +```mermaid +graph TD + A[UI_PlayLife_Main] --> B{角色狀態} + B -->|正常| C[選擇活動] + B -->|需要維護| D[角色維護] + C --> E[執行活動] + E --> F[狀態更新] +``` + +## 導航規則 + +### 全局導航 +- 主學習地圖:`UI_ChallengeLevel_Map` +- 個人中心:`UI_PersonalCenter_SelfMain` +- 排行榜:`UI_SocialRanking_Main` +- 商店:`UI_ItemStore_Main` + +### 返回機制 +- 每個子流程都有明確的返回路徑 +- 支援中途退出確認:`UI_ChallengeLevel_ExitComfirmPopup` +- 保存進度機制防止資料丟失 + +### 狀態保持 +- 用戶登入狀態持久化 +- 學習進度即時保存 +- 設定偏好本地存儲 + +## 異常處理流程 + +### 網路異常 +- 顯示連線錯誤提示 +- 提供重試機制 +- 離線模式支援(部分功能) + +### 資源不足 +- `UI_ScenarioDialog_InsufficientPopup` +- 引導至商店或廣告獎勵 +- 提供免費獲取方式 + +### 權限不足 +- 訪客提示:`UI_PersonalCenter_GuestPrompt`、`UI_SocialRanking_GuestPrompt` +- 功能鎖定:`UI_PersonalCenter_Locked`、`UI_ChallengeLevel_ChoosePopupLock` +- 升級引導流程 + +## 關鍵轉換點 (Conversion Points) + +1. **註冊轉換**: 訪客 → 註冊用戶 +2. **首次付費**: 免費用戶 → 付費用戶 +3. **留存關鍵**: 完成首個完整學習循環 +4. **社交激活**: 添加首個好友並進行競爭 +5. **習慣養成**: 連續7天使用應用 + +## 效能考量 + +- 關鍵路徑頁面載入時間 < 2秒 +- 對話評估回應時間 < 3秒 +- 離線快取常用內容 +- 漸進式載入非關鍵資源 + +## 無障礙支援 + +- 支援螢幕閱讀器 +- 鍵盤導航支援 +- 高對比度模式 +- 文字大小調整 + +## 多語言支援 + +- 介面語言切換 +- 學習內容本地化 +- RTL語言支援 +- 語音辨識多語言 + +--- + +本文件將隨著產品迭代持續更新,確保開發團隊始終有最新的用戶流程指引。 \ No newline at end of file diff --git a/docs/05_views/UI_BonusMission_Main.png b/docs/05_views/UI_BonusMission_Main.png new file mode 100644 index 0000000..e2b9de1 Binary files /dev/null and b/docs/05_views/UI_BonusMission_Main.png differ diff --git a/docs/05_views/UI_ChallengeLevel_ChoosePopup-1.png b/docs/05_views/UI_ChallengeLevel_ChoosePopup-1.png new file mode 100644 index 0000000..5570672 Binary files /dev/null and b/docs/05_views/UI_ChallengeLevel_ChoosePopup-1.png differ diff --git a/docs/05_views/UI_ChallengeLevel_ChoosePopup-2.png b/docs/05_views/UI_ChallengeLevel_ChoosePopup-2.png new file mode 100644 index 0000000..442570f Binary files /dev/null and b/docs/05_views/UI_ChallengeLevel_ChoosePopup-2.png differ diff --git a/docs/05_views/UI_ChallengeLevel_ChoosePopup.png b/docs/05_views/UI_ChallengeLevel_ChoosePopup.png new file mode 100644 index 0000000..4ee312e Binary files /dev/null and b/docs/05_views/UI_ChallengeLevel_ChoosePopup.png differ diff --git a/docs/05_views/UI_ChallengeLevel_ChoosePopupLock.png b/docs/05_views/UI_ChallengeLevel_ChoosePopupLock.png new file mode 100644 index 0000000..bd6d8e1 Binary files /dev/null and b/docs/05_views/UI_ChallengeLevel_ChoosePopupLock.png differ diff --git a/docs/05_views/UI_ChallengeLevel_ExitComfirmPopup.png b/docs/05_views/UI_ChallengeLevel_ExitComfirmPopup.png new file mode 100644 index 0000000..9579e18 Binary files /dev/null and b/docs/05_views/UI_ChallengeLevel_ExitComfirmPopup.png differ diff --git a/docs/05_views/UI_ChallengeLevel_Map.png b/docs/05_views/UI_ChallengeLevel_Map.png new file mode 100644 index 0000000..d5050fe Binary files /dev/null and b/docs/05_views/UI_ChallengeLevel_Map.png differ diff --git a/docs/05_views/UI_DialogCorrection_FluencyExplanation_Play.png b/docs/05_views/UI_DialogCorrection_FluencyExplanation_Play.png new file mode 100644 index 0000000..ce46e3f Binary files /dev/null and b/docs/05_views/UI_DialogCorrection_FluencyExplanation_Play.png differ diff --git a/docs/05_views/UI_DialogCorrection_FluencyPass_Result.png b/docs/05_views/UI_DialogCorrection_FluencyPass_Result.png new file mode 100644 index 0000000..ad6c431 Binary files /dev/null and b/docs/05_views/UI_DialogCorrection_FluencyPass_Result.png differ diff --git a/docs/05_views/UI_DialogCorrection_FluencyRetry_Play.png b/docs/05_views/UI_DialogCorrection_FluencyRetry_Play.png new file mode 100644 index 0000000..3e99675 Binary files /dev/null and b/docs/05_views/UI_DialogCorrection_FluencyRetry_Play.png differ diff --git a/docs/05_views/UI_DialogCorrection_SyntaxExplanation_Play.png b/docs/05_views/UI_DialogCorrection_SyntaxExplanation_Play.png new file mode 100644 index 0000000..c1b3ed4 Binary files /dev/null and b/docs/05_views/UI_DialogCorrection_SyntaxExplanation_Play.png differ diff --git a/docs/05_views/UI_DialogCorrection_SyntaxPass_Result.png b/docs/05_views/UI_DialogCorrection_SyntaxPass_Result.png new file mode 100644 index 0000000..976cc49 Binary files /dev/null and b/docs/05_views/UI_DialogCorrection_SyntaxPass_Result.png differ diff --git a/docs/05_views/UI_DialogCorrection_SyntaxRetry_Play.png b/docs/05_views/UI_DialogCorrection_SyntaxRetry_Play.png new file mode 100644 index 0000000..4815021 Binary files /dev/null and b/docs/05_views/UI_DialogCorrection_SyntaxRetry_Play.png differ diff --git a/docs/05_views/UI_GuestIntro_FormFrequency.png b/docs/05_views/UI_GuestIntro_FormFrequency.png new file mode 100644 index 0000000..e58df20 Binary files /dev/null and b/docs/05_views/UI_GuestIntro_FormFrequency.png differ diff --git a/docs/05_views/UI_GuestIntro_FormLevel.png b/docs/05_views/UI_GuestIntro_FormLevel.png new file mode 100644 index 0000000..7b1d7e5 Binary files /dev/null and b/docs/05_views/UI_GuestIntro_FormLevel.png differ diff --git a/docs/05_views/UI_GuestIntro_FormPurpose.png b/docs/05_views/UI_GuestIntro_FormPurpose.png new file mode 100644 index 0000000..bdbf892 Binary files /dev/null and b/docs/05_views/UI_GuestIntro_FormPurpose.png differ diff --git a/docs/05_views/UI_GuestIntro_FormTimeSlot.png b/docs/05_views/UI_GuestIntro_FormTimeSlot.png new file mode 100644 index 0000000..dfc24c9 Binary files /dev/null and b/docs/05_views/UI_GuestIntro_FormTimeSlot.png differ diff --git a/docs/05_views/UI_GuestIntro_Main.png b/docs/05_views/UI_GuestIntro_Main.png new file mode 100644 index 0000000..69b733c Binary files /dev/null and b/docs/05_views/UI_GuestIntro_Main.png differ diff --git a/docs/05_views/UI_GuestIntro_Notice.png b/docs/05_views/UI_GuestIntro_Notice.png new file mode 100644 index 0000000..af6b3d8 Binary files /dev/null and b/docs/05_views/UI_GuestIntro_Notice.png differ diff --git a/docs/05_views/UI_GuestIntro_Result.png b/docs/05_views/UI_GuestIntro_Result.png new file mode 100644 index 0000000..b9da16f Binary files /dev/null and b/docs/05_views/UI_GuestIntro_Result.png differ diff --git a/docs/05_views/UI_ItemStore_ConfirmPopup.png b/docs/05_views/UI_ItemStore_ConfirmPopup.png new file mode 100644 index 0000000..1f4fd91 Binary files /dev/null and b/docs/05_views/UI_ItemStore_ConfirmPopup.png differ diff --git a/docs/05_views/UI_ItemStore_Main.png b/docs/05_views/UI_ItemStore_Main.png new file mode 100644 index 0000000..666cce5 Binary files /dev/null and b/docs/05_views/UI_ItemStore_Main.png differ diff --git a/docs/05_views/UI_LanguageLevel_Main.png b/docs/05_views/UI_LanguageLevel_Main.png new file mode 100644 index 0000000..4d61066 Binary files /dev/null and b/docs/05_views/UI_LanguageLevel_Main.png differ diff --git a/docs/05_views/UI_LanguageLevel_Result.png b/docs/05_views/UI_LanguageLevel_Result.png new file mode 100644 index 0000000..3ec0d29 Binary files /dev/null and b/docs/05_views/UI_LanguageLevel_Result.png differ diff --git a/docs/05_views/UI_LevelResult_CorrectionResult.png b/docs/05_views/UI_LevelResult_CorrectionResult.png new file mode 100644 index 0000000..26b5777 Binary files /dev/null and b/docs/05_views/UI_LevelResult_CorrectionResult.png differ diff --git a/docs/05_views/UI_LevelResult_DialogScoreSummary.png b/docs/05_views/UI_LevelResult_DialogScoreSummary.png new file mode 100644 index 0000000..836c2b1 Binary files /dev/null and b/docs/05_views/UI_LevelResult_DialogScoreSummary.png differ diff --git a/docs/05_views/UI_LevelResult_FailResult.png b/docs/05_views/UI_LevelResult_FailResult.png new file mode 100644 index 0000000..c03cd8b Binary files /dev/null and b/docs/05_views/UI_LevelResult_FailResult.png differ diff --git a/docs/05_views/UI_LevelResult_FailResult2.png b/docs/05_views/UI_LevelResult_FailResult2.png new file mode 100644 index 0000000..317bdcb Binary files /dev/null and b/docs/05_views/UI_LevelResult_FailResult2.png differ diff --git a/docs/05_views/UI_LevelResult_RewardConfirm.png b/docs/05_views/UI_LevelResult_RewardConfirm.png new file mode 100644 index 0000000..a1797cc Binary files /dev/null and b/docs/05_views/UI_LevelResult_RewardConfirm.png differ diff --git a/docs/05_views/UI_LevelResult_ScoreSummary.png b/docs/05_views/UI_LevelResult_ScoreSummary.png new file mode 100644 index 0000000..ada4d86 Binary files /dev/null and b/docs/05_views/UI_LevelResult_ScoreSummary.png differ diff --git a/docs/05_views/UI_LevelResult_ScoreSummary2.png b/docs/05_views/UI_LevelResult_ScoreSummary2.png new file mode 100644 index 0000000..33c14ea Binary files /dev/null and b/docs/05_views/UI_LevelResult_ScoreSummary2.png differ diff --git a/docs/05_views/UI_LevelResult_SmallReward.png b/docs/05_views/UI_LevelResult_SmallReward.png new file mode 100644 index 0000000..5e309d3 Binary files /dev/null and b/docs/05_views/UI_LevelResult_SmallReward.png differ diff --git a/docs/05_views/UI_LevelResult_SuccessResult.png b/docs/05_views/UI_LevelResult_SuccessResult.png new file mode 100644 index 0000000..922e331 Binary files /dev/null and b/docs/05_views/UI_LevelResult_SuccessResult.png differ diff --git a/docs/05_views/UI_LevelResult_SuccessResult2.png b/docs/05_views/UI_LevelResult_SuccessResult2.png new file mode 100644 index 0000000..a6f4431 Binary files /dev/null and b/docs/05_views/UI_LevelResult_SuccessResult2.png differ diff --git a/docs/05_views/UI_Login_Main.png b/docs/05_views/UI_Login_Main.png new file mode 100644 index 0000000..335cdca Binary files /dev/null and b/docs/05_views/UI_Login_Main.png differ diff --git a/docs/05_views/UI_PasswordReset_Form.png b/docs/05_views/UI_PasswordReset_Form.png new file mode 100644 index 0000000..afe7ceb Binary files /dev/null and b/docs/05_views/UI_PasswordReset_Form.png differ diff --git a/docs/05_views/UI_PasswordReset_Popup.png b/docs/05_views/UI_PasswordReset_Popup.png new file mode 100644 index 0000000..1ee7197 Binary files /dev/null and b/docs/05_views/UI_PasswordReset_Popup.png differ diff --git a/docs/05_views/UI_PersonalCenter_FriendList.png b/docs/05_views/UI_PersonalCenter_FriendList.png new file mode 100644 index 0000000..0e70ee4 Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_FriendList.png differ diff --git a/docs/05_views/UI_PersonalCenter_FriendMain.png b/docs/05_views/UI_PersonalCenter_FriendMain.png new file mode 100644 index 0000000..a10500b Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_FriendMain.png differ diff --git a/docs/05_views/UI_PersonalCenter_FriendSearch.png b/docs/05_views/UI_PersonalCenter_FriendSearch.png new file mode 100644 index 0000000..cc5f1df Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_FriendSearch.png differ diff --git a/docs/05_views/UI_PersonalCenter_GuestPrompt.png b/docs/05_views/UI_PersonalCenter_GuestPrompt.png new file mode 100644 index 0000000..bfd7672 Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_GuestPrompt.png differ diff --git a/docs/05_views/UI_PersonalCenter_Locked.png b/docs/05_views/UI_PersonalCenter_Locked.png new file mode 100644 index 0000000..2f34ae0 Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_Locked.png differ diff --git a/docs/05_views/UI_PersonalCenter_OtherUserMain.png b/docs/05_views/UI_PersonalCenter_OtherUserMain.png new file mode 100644 index 0000000..a3fd8f1 Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_OtherUserMain.png differ diff --git a/docs/05_views/UI_PersonalCenter_SelfMain.png b/docs/05_views/UI_PersonalCenter_SelfMain.png new file mode 100644 index 0000000..cb5387b Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_SelfMain.png differ diff --git a/docs/05_views/UI_PersonalCenter_Settings.png b/docs/05_views/UI_PersonalCenter_Settings.png new file mode 100644 index 0000000..589263b Binary files /dev/null and b/docs/05_views/UI_PersonalCenter_Settings.png differ diff --git a/docs/05_views/UI_PlayLife_Main.png b/docs/05_views/UI_PlayLife_Main.png new file mode 100644 index 0000000..6dd4e28 Binary files /dev/null and b/docs/05_views/UI_PlayLife_Main.png differ diff --git a/docs/05_views/UI_PresonalCenter_dd_Detail.png b/docs/05_views/UI_PresonalCenter_dd_Detail.png new file mode 100644 index 0000000..b4e04ce Binary files /dev/null and b/docs/05_views/UI_PresonalCenter_dd_Detail.png differ diff --git a/docs/05_views/UI_ScenarioDialog_CostConfirmPopup.png b/docs/05_views/UI_ScenarioDialog_CostConfirmPopup.png new file mode 100644 index 0000000..e71c627 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_CostConfirmPopup.png differ diff --git a/docs/05_views/UI_ScenarioDialog_GoalDetail.png b/docs/05_views/UI_ScenarioDialog_GoalDetail.png new file mode 100644 index 0000000..dd12409 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_GoalDetail.png differ diff --git a/docs/05_views/UI_ScenarioDialog_InsufficientPopup.png b/docs/05_views/UI_ScenarioDialog_InsufficientPopup.png new file mode 100644 index 0000000..57f00b1 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_InsufficientPopup.png differ diff --git a/docs/05_views/UI_ScenarioDialog_KeywordDetail.png b/docs/05_views/UI_ScenarioDialog_KeywordDetail.png new file mode 100644 index 0000000..94e52e5 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_KeywordDetail.png differ diff --git a/docs/05_views/UI_ScenarioDialog_ReplyGuide.png b/docs/05_views/UI_ScenarioDialog_ReplyGuide.png new file mode 100644 index 0000000..565fa5d Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_ReplyGuide.png differ diff --git a/docs/05_views/UI_ScenarioDialog_ReplyInput.png b/docs/05_views/UI_ScenarioDialog_ReplyInput.png new file mode 100644 index 0000000..9afd7f7 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_ReplyInput.png differ diff --git a/docs/05_views/UI_ScenarioDialog_ReplyResult.png b/docs/05_views/UI_ScenarioDialog_ReplyResult.png new file mode 100644 index 0000000..a7a7183 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_ReplyResult.png differ diff --git a/docs/05_views/UI_ScenarioDialog_RoleDetail.png b/docs/05_views/UI_ScenarioDialog_RoleDetail.png new file mode 100644 index 0000000..cf5f2b2 Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_RoleDetail.png differ diff --git a/docs/05_views/UI_ScenarioDialog_Scene.png b/docs/05_views/UI_ScenarioDialog_Scene.png new file mode 100644 index 0000000..141576f Binary files /dev/null and b/docs/05_views/UI_ScenarioDialog_Scene.png differ diff --git a/docs/05_views/UI_SignUp_Main.png b/docs/05_views/UI_SignUp_Main.png new file mode 100644 index 0000000..b96411f Binary files /dev/null and b/docs/05_views/UI_SignUp_Main.png differ diff --git a/docs/05_views/UI_SocialRanking_GuestPrompt.png b/docs/05_views/UI_SocialRanking_GuestPrompt.png new file mode 100644 index 0000000..ab57c75 Binary files /dev/null and b/docs/05_views/UI_SocialRanking_GuestPrompt.png differ diff --git a/docs/05_views/UI_SocialRanking_Main.png b/docs/05_views/UI_SocialRanking_Main.png new file mode 100644 index 0000000..7ea8557 Binary files /dev/null and b/docs/05_views/UI_SocialRanking_Main.png differ diff --git a/docs/05_views/UI_Subscription_Result.png b/docs/05_views/UI_Subscription_Result.png new file mode 100644 index 0000000..dd31bee Binary files /dev/null and b/docs/05_views/UI_Subscription_Result.png differ diff --git a/docs/05_views/UI_TimeGate_ConfirmUseTicket.png b/docs/05_views/UI_TimeGate_ConfirmUseTicket.png new file mode 100644 index 0000000..8e77de4 Binary files /dev/null and b/docs/05_views/UI_TimeGate_ConfirmUseTicket.png differ diff --git a/docs/05_views/UI_UserAccount_List.png b/docs/05_views/UI_UserAccount_List.png new file mode 100644 index 0000000..ee0f523 Binary files /dev/null and b/docs/05_views/UI_UserAccount_List.png differ diff --git a/docs/05_views/UI_UserAccount_Option.png b/docs/05_views/UI_UserAccount_Option.png new file mode 100644 index 0000000..fe5d902 Binary files /dev/null and b/docs/05_views/UI_UserAccount_Option.png differ diff --git a/docs/05_views/UI_VocabFluency_MatchImageResult.png b/docs/05_views/UI_VocabFluency_MatchImageResult.png new file mode 100644 index 0000000..bef66d2 Binary files /dev/null and b/docs/05_views/UI_VocabFluency_MatchImageResult.png differ diff --git a/docs/05_views/UI_VocabFluency_MatchImageToWord.png b/docs/05_views/UI_VocabFluency_MatchImageToWord.png new file mode 100644 index 0000000..38ae6b0 Binary files /dev/null and b/docs/05_views/UI_VocabFluency_MatchImageToWord.png differ diff --git a/docs/05_views/UI_VocabFluency_SentenceReorder.png b/docs/05_views/UI_VocabFluency_SentenceReorder.png new file mode 100644 index 0000000..1d78124 Binary files /dev/null and b/docs/05_views/UI_VocabFluency_SentenceReorder.png differ diff --git a/docs/05_views/UI_VocabFluency_SentenceResult.png b/docs/05_views/UI_VocabFluency_SentenceResult.png new file mode 100644 index 0000000..89c426e Binary files /dev/null and b/docs/05_views/UI_VocabFluency_SentenceResult.png differ diff --git a/docs/05_views/UI_VocabIntro_CardIntro.png b/docs/05_views/UI_VocabIntro_CardIntro.png new file mode 100644 index 0000000..15f1202 Binary files /dev/null and b/docs/05_views/UI_VocabIntro_CardIntro.png differ diff --git a/docs/05_views/UI_VocabIntro_Choice.png b/docs/05_views/UI_VocabIntro_Choice.png new file mode 100644 index 0000000..9eb8e6e Binary files /dev/null and b/docs/05_views/UI_VocabIntro_Choice.png differ diff --git a/docs/05_views/UI_VocabIntro_ChoiceResult.png b/docs/05_views/UI_VocabIntro_ChoiceResult.png new file mode 100644 index 0000000..2ba1185 Binary files /dev/null and b/docs/05_views/UI_VocabIntro_ChoiceResult.png differ diff --git a/docs/05_views/UI_VocabReview_Main.png b/docs/05_views/UI_VocabReview_Main.png new file mode 100644 index 0000000..d47419f Binary files /dev/null and b/docs/05_views/UI_VocabReview_Main.png differ