This is a modern rewrite of my old Strava Äpp.
- Code: The source-code is open source.
- Data: The app does not use a database. Your Strava data is only temporarily cached.
- Access: A temporary access token to your Strava profile is used and revoked at logout.
- Cookies: Only a single technical cookie is used for session identification and deleted at end of session. No user tracking.
pre-commit run --all-files
scripts/copy_test_data.sh
pytest --cov --cov-report=html:coverage_reportsee .streamlit/config.toml see .streamlit/secrets.toml
- some text to explain features
- activity description fetching (requires 1 API call per activity)
- activity caching: all or selected years only
- activity geo calculations
- gear download
- activity table
- activity statistics
- activity year summary
- activity active days per year
- known locations edit and list unknown frequent locations
- choose km vs. miles
- calendar export
- why is supervisorctl log empty
supervisorctl tail -f strava-streamlit - reconnect after token expired
- unit tests for act stats
- Strava login
- Strava logout/deauthorize
- Strava token refresh
- Strava logos and buttons
- API response caching for local dev environment
- unit tests using dummy activity data
supervisorctl tail -f strava-streamlit
tail -f ~/logs/supervisord.logTODO: why is the output of first command not showing the logs?