A local dashboard for visualising your Strava activity data. Connect your Strava account and explore stats, trends, and charts across all your sports.
- Python 3.10+
- A Strava account
- Go to strava.com/settings/api (log in if prompted)
- Fill in the form:
- Application Name: anything you like, e.g.
My Stats - Category: choose any relevant category
- Club: leave blank
- Website:
http://localhost(required but not used) - Authorization Callback Domain:
localhost
- Application Name: anything you like, e.g.
- Click Save and you will be taken to your app's settings page
- Note down your Client ID and Client Secret — you will need these in the next step
Clone or download this repository, then in a terminal run:
macOS / Linux:
./start
Windows:
start.bat
The first time you run it, the script will:
- Ask for your Strava Client ID and Client Secret, and save them to a
.envfile - Generate a random
SESSION_SECRET_KEYautomatically - Create a Python virtual environment
- Install all dependencies
- Start the server at http://localhost:8000
On subsequent runs it skips straight to starting the server.
Open http://localhost:8000 in your browser and click Connect with Strava. You will be redirected to Strava to authorise the app, then brought back to the dashboard.
- Your credentials are stored locally in
.envand never leave your machine - The
.envfile is excluded from git, so it will not be accidentally committed - If you need to update your credentials, delete
.envand run the start script again