Skip to main content

Browser-based Sport Workout Organizer to analyze your Activities locally

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
  • Dashboard overview page of all activities
  • Render your activity gps data on different OSM maps
  • Show either all activities of one sport or only one activity on the map
  • Plots of activity specific data like: heart rate, pace, temperature, cadence and altitude
  • Integrate laps into both plots and maps
  • Connect plots and map via mouse hovering
  • Keyboard navigation in browser
  • Add untracked activities manually via the GUI
  • Create and download .gpx files to share your activities
  • Add as many different sports as you want.
  • Convenience CLI for installing, configuring, 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 occuring 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 tags section.

Contributing

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

For local development first clone the repo and install the dev-requirements.txt like

pip install -r setup/requirements/dev-requirements.txt

Afterwards I recommend to run the development docker container:

./run_docker.sh

This will build the image, run the container and initialize workoutizer. Once up and running, run the tests

pytest wizer/tests/unit_tests
pytest wizer/tests/integration_tests

Once this was successful you are good to go.

Note: The browser_tests cannot (yet) be ran from within the docker container, but it is possible to run them form your host system. You might need to install gecko driver though.

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.6.7.tar.gz (257.3 kB view hashes)

Uploaded Source

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