一個功能完整的健身追蹤應用程式,使用 Streamlit 構建,幫助您記錄訓練、追蹤進度並分析數據。
- 快速記錄多組訓練數據
- 自動填入上一次訓練記錄(Auto-fill)
- RPE(自覺強度)評分
- 支援多種單位(kg、lb、notch)
- 休息計時器
- 動作趨勢圖表(重量、容量、1RM)
- 個人紀錄牆(PR Wall)
- 肌肉群訓練分布熱力圖
- 時間範圍篩選
- 新增自定義動作
- 管理動作分類和類型
- 支援多種動作類型(Barbell、Dumbbell、Machine、Cable)
- 1RM 計算器(Epley 公式)
- 單位自動轉換
- 訓練容量計算
pip install -r requirements.txt預設連接埠(8501):
streamlit run app.py指定其他連接埠(避免與其他專案衝突):
streamlit run app.py --server.port 8502或使用其他可用連接埠:
streamlit run app.py --server.port 8503
streamlit run app.py --server.port 8504應用程式將在瀏覽器中自動開啟(例如 http://localhost:8502)
- 應用程式會自動建立 SQLite 資料庫(
data/gym_tracker.db) - 建議先在「動作庫管理」頁面新增常用動作
- 開始在「記錄訓練」頁面記錄您的訓練
- 選擇訓練日期(預設為今天)
- 選擇肌肉群,然後選擇動作
- 在動態表格中輸入多組數據(重量、次數)
- 調整 RPE 和添加備註(可選)
- 點擊「儲存訓練」按鈕
- 前往「進度儀表板」頁面
- 選擇要分析的動作
- 查看趨勢圖表、個人紀錄和訓練分布
所有資料儲存在 SQLite 資料庫中(data/gym_tracker.db),包含:
- 訓練記錄
- 動作庫
- 歷史數據
- 前端框架: Streamlit
- 資料庫: SQLite
- 資料視覺化: Plotly
- 資料處理: Pandas
- 單位轉換:系統會自動將所有重量統一轉換為 kg 進行分析,但保留原始單位顯示
- 1RM 計算:使用 Epley 公式
Weight × (1 + Reps/30) - 資料備份:建議定期備份
data/gym_tracker.db檔案
本專案為個人使用,可自由修改和擴展。