Skip to content

Lei-TzuY/flashcard_app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flashcard App (抽認卡應用程式)

這是一個功能強大的抽認卡應用程式,旨在幫助您透過間隔重複和語音輔助來高效學習。

✨ 功能特色 (Features)

核心功能

  • 📇 抽認卡管理: 輕鬆建立、編輯和刪除抽認卡
  • 🗣️ 文字轉語音 (TTS): 支援多語言發音,幫助您練習聽力和發音
  • 📂 檔案匯入: 支援從 CSV 或 JSON 檔案批次匯入單字卡
  • 🖥️ 跨平台支援: 專為 Windows 和 Linux 設計 (基於 Flutter)
  • 🎨 現代化介面: 簡潔美觀的使用者介面,提供最佳的學習體驗

🆕 新增功能

  • 🎯 間隔重複學習系統 (SM-2 算法): 基於遺忘曲線的智能復習提醒,自動計算最佳復習時間
  • 🏷️ 標籤系統: 靈活的多維度卡片分類,支持多標籤和顏色標識
  • 🎖️ 學習目標與成就: 設定每日/每周學習目標,解鎖10+預設成就
  • 📤 多格式導出: 支援 CSV、Anki、JSON 格式導出
  • 🔍 全局搜索: 強大的實時搜索功能,支持標籤篩選
  • 📊 學習統計: 詳細的學習數據分析和可視化

🚀 開始使用 (Getting Started)

先決條件

安裝與執行

  1. 複製專案

    git clone https://github.com/Lei-TzuY/flashcard_app.git
    cd flashcard_app
  2. 安裝依賴

    flutter pub get
  3. 執行應用程式

    flutter run

🛠️ 技術堆疊 (Tech Stack)

  • 框架: Flutter
  • 語言: Dart
  • 狀態管理: Provider
  • 語音套件: flutter_tts
  • 檔案選擇: file_picker
  • 數據持久化: shared_preferences
  • 圖表: fl_chart
  • 字體: google_fonts

📋 主要功能說明

間隔重複學習

使用 SuperMemo 2 (SM-2) 算法,根據您的記憶情況自動調整復習間隔:

  • 重來 (1天後)
  • 困難 (動態計算)
  • 良好 (適中間隔)
  • 簡單 (延長間隔)

標籤系統

  • 為每張卡片添加多個標籤
  • 自定義標籤顏色
  • 按標籤快速篩選
  • 標籤使用統計

成就系統

解鎖10+預設成就,包括:

  • 📝 初學者 - 創建10張卡片
  • 🎓 學霸 - 復習200張卡片
  • 🔥 持之以恒 - 連續學習7天
  • ...更多成就等您探索!

數據導出

支持多種格式:

  • CSV: 適合 Excel 分析
  • Anki: 兼容 Anki 導入
  • JSON: 完整數據備份

📝 使用提示

  1. 開始學習: 在主界面點擊「今日復習」查看待復習卡片
  2. 快速搜索: 點擊「全局搜索」快速查找任何卡片或卡組
  3. 標籤管理: 為卡片添加標籤,方便分類和檢索
  4. 查看統計: 在統計頁面查看學習進度和成就

🎯 未來計劃

  • 完善標籤管理 UI
  • 添加成就展示界面
  • 學習目標設置頁面
  • PDF 導出功能
  • 更多成就類型
  • 雲端同步功能

持續開發中,歡迎提供建議和反饋!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •