A Streamlit web application for interactive analysis and visualization of the Olympic athletes dataset.
Live demo: https://olympic-performance-analytics.onrender.com/
Dataset Link: https://www.kaggle.com/heesoo37/120-years-of-olympic-history-athletes-and-results
Project structure
app.py— Streamlit application entrypoint (loadsathlete_events.csv).preprocessor.py— data cleaning and preparation utilities.helper.py— helper functions used by the app.athlete_events.csv— primary dataset (kept in repository root).noc_regions.csv— nation/region lookup table.requirements.txt— Python dependencies (includesstreamlit).Dockerfile— container image to run the Streamlit app.Procfile&setup.sh— deployment helpers (used for Render/Heroku-like hosts).
Quickstart (local)
- Create a virtual environment and activate it.
python -m venv .venv
source .venv/bin/activate # On Windows use: .venv\\Scripts\\activate- Install dependencies and run the app.
pip install -r requirements.txt
streamlit run app.pyDocker
Build and run the provided Dockerfile:
docker build -t olympics-app .
docker run -p 8501:8501 olympics-appNotes
- The app expects
athlete_events.csvto be present in the repository root. Do not remove or rename this file unless you updateapp.pyaccordingly. - The dataset and live demo link above are preserved as-is.
Contributing
- Open issues or pull requests for improvements, bugfixes, or documentation updates.
License
- See repository root for license information (if present).