A dashboard for flexibly displaying and tracking Strava runs.
-
Follow the instructions in this article to obtain your personal Strava API credentials (client id, client secret and refresh token).
-
Create an account on streamlit, this must be connected to your GitHub account.
-
Fork this repo to your GitHub account.
-
Create a new streamlit app:
-
Seed from your forked repo's
mainbranch. -
Set the Main file path to
deploy.py. -
In Advanced settings, input your Strava API credentials in the format:
STRAVA_CLIENT_ID = "your_client_id" STRAVA_CLIENT_SECRET = "your_client_secret" STRAVA_REFRESH_TOKEN = "your_refresh_token"
-
stravaboard allows you to flexibly track and present your run metrics in any form you prefer. To add new components to stravaboard:
-
Create a new subclass of
StravaboardComponentinsrc/stravaboard/streamlit/components.py. Add a method,display(), which should generate your desired data/plots via streamlit-compatible functions. -
Add your new subclass to the list of components in
deploy.py.
Data is retrieved through the Strava API and the dashboard is deployed using Streamlit.