An app to visualise and analyse running data from Strava. A toy project, not intended to do all that much or be particularly useful.
Currently limited to only a single user, who must create an API accound and fill out the config in the backend with its details.
This is currently set up as two main components:
- backend, written in Python, which handles interaction with the Strava API as well as all the database integration.
- frontend, written in React. Displays data in a few different ways. Uses Plotly for visualising data and Leaflet for mapping.
The whole application is backed by a MongoDB database, which caches a bunch of data from the Strava API. Aggregations are then performed over the data to produce the visulisations.
There's a Trello Board for the project, which outlines some of the stuff still TODO.
The frontpage showing stats evolving over time (binned data by week/month):
Temporal stats (raw data):
Moving average with trend-line:
Heatmap of pace/frequency based on binned location: