Skip to main content

🏋️ Browser based Sport and Workout Organizer 🏃‍♀️

Project description

Workoutizer

The Workoutizer is a simple web application for organizing your workouts and sports activities. It is designed to work locally on any UNIX-like system running Python.

Track your activities to get an overview of your overall training, similar to platforms like strava or garmin connect - but without uploading all your sensitive health data to some 3rd party cloud.

Features

  • Automatic import of Garmin .fit files and .gpx files
  • Automatic naming of activities based on daytime, sport and geo location
  • Render your activity gps data on different OSM maps
  • Plot your activity specific data e.g. heart rate, pace, temperature, cadence and altitude
  • Integrate laps into both plots and maps
  • Connected plots and map via mouse hovering
  • Find the fastest sections in your activities using sportgems
  • Keyboard navigation in browser
  • Add untracked activities manually via the GUI
  • Export activities as .gpx files
  • Add as many different sports as you want
  • Convenience CLI for installing, running, stopping, updating, ...

Getting Started

Install workoutizer

pip install workoutizer

Initialize and run workoutizer

wkz init
wkz run

See the help description of the CLI with wkz --help and even subcommands, e.g.: wkz manage --help.

Note: This should work for any Linux and Mac system. Please report any occurring issues when installing workoutizer.

Workoutizer comes bundled with some initial toy activity data, which can be deleted easily on the Settings page.

In case you want to run workoutizer on a Raspberry Pi in your local network, follow the Raspberry Pi setup instructions.

Gallery

Dashboard Sport Page
Activity Page 1/2 Activity Page 2/2

Thanks

Thanks to the authors of projects I integrated into workoutizer:

Enjoy!

Changelog

See the releases section.

For older releases have a look at the archived project at gitlab.

Contributing

Contributions are welcome! Feel free to pick an open issue, open up a pull request or file a new issue.

For local development I recommend to run the development docker container. First clone the repo:

git clone git@github.com:fgebhart/workoutizer.git
cd workoutizer

and then start workoutizer in docker using the convenience script:

./run_docker.sh

This might take a while to build the image, run the container and initialize workoutizer. Once up and running, run the tests with

pytest wizer/tests/

Once this was successful you are good to go.

In order to run workoutizer you could either run it using django's manage.py script

python manage.py runserver

or using the wkz cli

wkz run

In case you encounter any issues in the setup process, feel free to file an issue.

Note: If you are using VS-Code you might want to open the folder of this repo in a docker container directly using the Remote - Containers extension.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

workoutizer-0.9.0.tar.gz (835.8 kB view hashes)

Uploaded Source

Built Distribution

workoutizer-0.9.0-py3-none-any.whl (862.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page