main initial setup of the repo.

This commit is contained in:
2025-07-30 11:54:03 +02:00
commit 35f711f656
8 changed files with 90286 additions and 0 deletions

106
README.md Normal file
View File

@@ -0,0 +1,106 @@
# 🏃‍♂️ GPX Jogging Dashboard
An interactive Python Dash app to visualize, analyze, and explore your jogging or running sessions recorded as GPX files.
![Dashboard Preview](WebAppGPXDashboard.jpg)
---
## Features
- **Interactive Map View** with route trace and start/stop markers
- **Info Banner** with total distance, duration, and average pace
- **Elevation Profile** with relative height and gradient fill
- **Speed Over Time** plot with smoothing and average line
- **Deviation from Mean Speed** to see pacing consistency
- **Pace Bar Chart** showing per-kilometer pace breakdown
---
## Project Structure
```
app.py # Main Dash application
assets/ # CSS and styling
data/ # Folder for storing GPX files
utils.py # Optional helper functions
requirements.txt # Required Python packages
README.md # This file
```
---
## Getting Started
### 1. Clone the repository
```bash
git clone https://github.com/yourusername/gpx-jogging-dashboard.git
cd gpx-jogging-dashboard
```
### 2. Install dependencies
We recommend using a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# TODO:
pip install -r ...
```
### 3. Run the app
```bash
python app.py
```
Then open your browser and go to:
[http://127.0.0.1:8050](http://127.0.0.1:8050)
---
## Uploading Your GPX File
1. Export your activity (e.g., from Strava, Garmin, etc.) as a `.gpx` file
2. Place the file into the `gpx_files/` directory
3. Select it via the dropdown in the dashboard
---
## Tech Stack
- **Dash** (by Plotly) for building the UI and graphs
- **Pandas** for data wrangling
- **Plotly Graph Objects & Express** for advanced visuals
- **GPXPy** for parsing `.gpx` files
- **Numpy** for vectorized math and smoothing
---
## Example GPX File
You can test the dashboard by placing any valid `.gpx` file in the `gpx_files/` directory. Make sure it contains track points with elevation and time data.
---
## To Do / Ideas
- [ ] Heart rate support if present in GPX
- [ ] Export graphs as images
- [ ] Export as PDF report
- [ ] Multi-run comparison
---
## License
This project is open source under the [MIT License](LICENSE).
---
## Feedback / Contributions
Feel free to open issues or pull requests!
If you enjoy this project, a ⭐️ star is always appreciated.

BIN
WebAppGPXDashboard.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 651 KiB

20812
gpx_files/20250621_093335.gpx Normal file

File diff suppressed because it is too large Load Diff

20549
gpx_files/20250623_152441.gpx Normal file

File diff suppressed because it is too large Load Diff

19288
gpx_files/20250626_093922.gpx Normal file

File diff suppressed because it is too large Load Diff

15052
gpx_files/20250710_131853.gpx Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff