Parkrun, a worldwide community running event held every Saturday morning, invites participants to run together to cover a 5km courses in community park venues. Originating in the UK, this global phenomenon hosts hundreds of weekly parkruns across Europe, USA, Africa, Australia, and Asia.
This Dash web application enables users to visualise and deep-dive into results for specific parkrunners. The interface allows parkrunners to monitor and visualise their performance trends over time, and explore details about their top parkrun locations and attendance.
See sample screenshots below:
Unfortunately as parkrun does not provide a public API, it is not possible to retrieve data through an API. Required data for this Dash app is fetched by web-scraping an individual page. Intended usage results in similar traffic to human consumption of the parkrun website.
Please note that the app is not currently deployed to any hosting sites, as many platforms hosting Python applications now require some form of subscription or payment for hosting services.
I have tested hosting this on PythonAnywhere - while I was able to deploy the app, I ran into significant issues in being able to web-scrape content from PythonAnywhere.
There is opportunity for additional content to be developed and added to this work - e.g. individual event information and visualisations, cross-event or cross-location information. This may be of future interest but is currently backlogged, and not in active development.
Install requirements - requirements.txt should be more up to date:
pip install -r requirements.txt
Poetry is out of date - do not use:
poetry install
To run app locally:
Application entry point is through app.py