eaeb4ab2c8c65b022e20f4e74ed6f68340025614
- Moved workout-related routes (create/delete/edit workouts, topsets, tags, start dates, show workout) from `app.py` into a new blueprint at `routes/workout.py`. - Integrated workout view model logic from `features/workout.py` directly into `routes/workout.py` helper function `_get_workout_view_model`. - Removed `features/workout.py` and the corresponding class instantiation in `db.py`. - Registered the new `workout_bp` blueprint in `app.py`. - Removed the original workout route definitions from `app.py`. - Updated `url_for` calls in relevant templates (`workout.html`, `person_overview.html`, `partials/workout_tags.html`, `partials/topset.html`, `partials/start_date.html`, `partials/new_set_form.html`, `notes.html`, `calendar.html`) to reference the new blueprint endpoints (e.g., `workout.create_workout`). - Updated `templates/changelog/changelog.html` to document this refactoring.
Workout tracker
Track topsets over time.
Setup
Install python>3
Install dependencies
$ pip install -r requirements.txt
Enable development mode
PS $ENV:FLASK_ENV='development'
Set database url, either setup postgres database locally use migration script or expose deployed one
$Env:DATABASE_URL = 'postgres://postgres:***@***:***/***'
Start application:
flask run
Features
- Track topsets for each workout
- Multi user
- Authentication/Authorisation
Description
Languages
HTML
43.9%
Python
35.5%
Jupyter Notebook
18.8%
PLpgSQL
1.2%
CSS
0.6%