(docs): Added todo doc
This commit is contained in:
parent
b29d7481e7
commit
853dd67471
1 changed files with 130 additions and 0 deletions
130
TODO.md
Normal file
130
TODO.md
Normal file
|
|
@ -0,0 +1,130 @@
|
||||||
|
## **📋 TODO Roadmap**
|
||||||
|
|
||||||
|
### **Phase 1: Core Foundation** ⏳
|
||||||
|
- [ ] **Project Setup**
|
||||||
|
- [ ] Initialize Python project structure
|
||||||
|
- [ ] Set up virtual environment and dependencies
|
||||||
|
- [ ] Create base workout and tracker models
|
||||||
|
- [ ] Implement local JSON storage
|
||||||
|
|
||||||
|
- [ ] **Basic GUI (Tkinter)**
|
||||||
|
- [ ] Main window layout
|
||||||
|
- [ ] Manual workout entry form
|
||||||
|
- [ ] Workout list display
|
||||||
|
- [ ] Basic stats (total/remaining distance)
|
||||||
|
|
||||||
|
- [ ] **Core Workout Tracking**
|
||||||
|
- [ ] Workout model (date, activity, distance, duration, notes, power, cadence)
|
||||||
|
- [ ] Tracker logic (totals, weekly summaries, goal progress)
|
||||||
|
- [ ] CRUD operations for workouts
|
||||||
|
- [ ] Data validation and error handling
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### **Phase 2: Equipment Management** 🔧
|
||||||
|
- [ ] **Equipment Discovery & Selection**
|
||||||
|
- [ ] Scan for all available BLE/ANT+ devices
|
||||||
|
- [ ] Device type detection (trainer vs power meter vs HR monitor)
|
||||||
|
- [ ] Equipment selection UI (dropdown/list with device info)
|
||||||
|
- [ ] Save preferred equipment to user settings
|
||||||
|
|
||||||
|
- [ ] **Multi-Device Support**
|
||||||
|
- [ ] Connect to multiple devices simultaneously (trainer + HR + cadence)
|
||||||
|
- [ ] Handle device priority (e.g., power from trainer vs power meter)
|
||||||
|
- [ ] Device connection status indicators
|
||||||
|
- [ ] Automatic reconnection on disconnect
|
||||||
|
|
||||||
|
- [ ] **Equipment Profiles**
|
||||||
|
- [ ] Create equipment profiles (e.g., "Indoor Setup", "Outdoor Setup")
|
||||||
|
- [ ] Quick-switch between profiles
|
||||||
|
- [ ] Profile-specific calibration settings
|
||||||
|
- [ ] Equipment-specific data recording preferences
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### **Phase 3: Saris H3 Integration** 🔄
|
||||||
|
- [ ] **Bluetooth Low Energy Connection**
|
||||||
|
- [ ] Device discovery and pairing
|
||||||
|
- [ ] Connect to Saris H3 via `bleak`
|
||||||
|
- [ ] Handle connection errors and reconnection
|
||||||
|
|
||||||
|
- [ ] **Live Data Capture**
|
||||||
|
- [ ] Read power data (Cycling Power Service)
|
||||||
|
- [ ] Read speed/cadence (Fitness Machine Service)
|
||||||
|
- [ ] Real-time display in GUI
|
||||||
|
- [ ] Data logging during rides
|
||||||
|
|
||||||
|
- [ ] **Automatic Ride Detection**
|
||||||
|
- [ ] Start ride detection (power > threshold)
|
||||||
|
- [ ] Stop ride detection (power = 0 for X seconds)
|
||||||
|
- [ ] Auto-save completed rides to tracker
|
||||||
|
- [ ] Ride summary popup
|
||||||
|
|
||||||
|
- [ ] **Trainer Control** (Future)
|
||||||
|
- [ ] ERG mode (set target watts)
|
||||||
|
- [ ] Resistance/slope control
|
||||||
|
- [ ] Structured workout execution
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### **Phase 4: Data Visualization** 📊
|
||||||
|
- [ ] **Charts and Analytics**
|
||||||
|
- [ ] Weekly mileage chart (matplotlib)
|
||||||
|
- [ ] Power curve visualization
|
||||||
|
- [ ] Progress toward goal chart
|
||||||
|
- [ ] Training load trends (if data available)
|
||||||
|
|
||||||
|
- [ ] **Enhanced UI**
|
||||||
|
- [ ] Tabbed interface (Overview, Rides, Charts, Settings)
|
||||||
|
- [ ] Dark mode toggle
|
||||||
|
- [ ] Responsive layout improvements
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### **Phase 5: External Integrations** 🔗
|
||||||
|
- [ ] **Intervals.icu Integration**
|
||||||
|
- [ ] API authentication (personal API key)
|
||||||
|
- [ ] Push workouts to Intervals.icu
|
||||||
|
- [ ] Pull planned workouts
|
||||||
|
- [ ] Sync status indicators
|
||||||
|
- [ ] Error handling for API calls
|
||||||
|
|
||||||
|
- [ ] **COROS Training Hub Integration**
|
||||||
|
- [ ] Research API availability (likely requires reverse engineering)
|
||||||
|
- [ ] Implement authentication
|
||||||
|
- [ ] Push/pull workout data
|
||||||
|
- [ ] Fallback: FIT/TCX file export for manual upload
|
||||||
|
|
||||||
|
- [ ] **File Import/Export**
|
||||||
|
- [ ] Import FIT/TCX/GPX files (outdoor rides)
|
||||||
|
- [ ] Export to CSV
|
||||||
|
- [ ] Backup/restore functionality
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### **Phase 6: Polish & Features** ✨
|
||||||
|
- [ ] **User Experience**
|
||||||
|
- [ ] Settings panel (goals, API keys, preferences)
|
||||||
|
- [ ] Workout editing/deletion
|
||||||
|
- [ ] Search and filter workouts
|
||||||
|
- [ ] Keyboard shortcuts
|
||||||
|
|
||||||
|
- [ ] **Advanced Features**
|
||||||
|
- [ ] Multi-user profiles
|
||||||
|
- [ ] Workout planning calendar
|
||||||
|
- [ ] Training zones configuration
|
||||||
|
- [ ] Custom goal setting
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### **Phase 7: Future Enhancements** 🚀
|
||||||
|
- [ ] **Cloud & Mobile**
|
||||||
|
- [ ] Cloud sync (Dropbox/Google Drive)
|
||||||
|
- [ ] Mobile companion app
|
||||||
|
- [ ] Web dashboard
|
||||||
|
|
||||||
|
- [ ] **Advanced Analytics**
|
||||||
|
- [ ] Training Stress Score (TSS) calculation
|
||||||
|
- [ ] Chronic Training Load (CTL/ATL)
|
||||||
|
- [ ] Performance modeling
|
||||||
|
- [ ] Race prediction
|
||||||
Loading…
Add table
Add a link
Reference in a new issue