10-ui-components.md
本文件概述了認證考試 (certification exam) 應用程式的 UI 元件清單與架構。它將可重複使用的元件分類,並詳細說明其內部狀態、屬性以及在應用程式中的具體角色。
question, selectedAnswers, isSubmitted, onAnswerSelected
default (預設), selected (已選), correct (正確), incorrect (錯誤), disabled (停用)guest 訪客使用者)。widgets/exam/).md 檔案的功能,用於儲存對話。Provider),優先使用 StatelessWidget。StatefulWidget 嚴格保留用於本機 UI 狀態(例如動畫、捲動控制器或暫時的輸入欄位)。ChangeNotifier 的更新。Selector 用於監聽特定屬性,以將不必要的重建降至最低,維持高效能。ValueKey 或 ObjectKey 應用於列表中的項目(如選項或留言),以確保在列表變動期間有最佳的渲染效能與狀態保存。11-automation-scripts.md
本文件描述了在認證考試 (certification exam) 專案中使用的各種自動化腳本,這些腳本旨在簡化資料庫管理、部署、AI 生成以及程式碼維護工作。
google-generativeai、supabase、pymongo、requests。python scripts/classify_questions_ai.py
topic=1 過濾器)。classified_ids.json) 檢查,防止重複處理。.env 中提供 API 金鑰和資料庫憑證。classified_ids.json 快取可讓腳本在中斷後安全地從上次的位置重新啟動。learn_english 分析。pgvector 欄位,以進行快速的餘弦相似度 (cosine similarity) 查詢。snake_case 資料庫欄位轉換為 camelCase JSON 屬性。approvedKeys 索引節點,以最佳化客戶端擷取效能。play-store-credentials.json, service-account.json。這些腳本主要在 Windows 環境中用於建置自動化。
build_aab_internal.ps1: 建置 Android 應用程式套件 (AAB) 並部署至內部測試軌道。build_aab_closed.ps1: 建置 AAB 並部署至封閉測試軌道。build_aab_production.ps1: 建置 AAB 並部署至正式版軌道。build_web.ps1 / build_web_internal.ps1: 編譯 Flutter Web 應用程式。-AutoY(略過手動確認)和 -AutoDeploy(自動上傳至 Play 商店)。get_latest_version.py,以確保建置前有正確的版本號。check_supabase_coverage.js: 驗證 Supabase 實例中的資料涵蓋範圍和完整性。generate_pages.js / generate_static_notes.js: 處理靜態網站產生,用於文件或基於網頁的筆記。sync_explanations.js: 在不同環境之間同步解析資料。migrate_to_supabase.dart / migrate_direct_dart.dart: 用於將資料從 MongoDB 移轉至 Supabase 的公用腳本。fix_mongodb_exam_ids.dart / diagnose_mongodb.dart: 用於 MongoDB 資料庫維護和資料修復的工具。執行此自動化套件,主機電腦必須具備:
pip 套件。npm 套件。.env)。