Find a file
João Vitória Silva d193011793 Bump version to v0.15.6
2025-11-03 11:27:27 +00:00
.github Add and update docstrings for profile services and schema 2025-10-28 15:33:22 +00:00
aux_scripts BMI logic + fixes 2024-12-10 17:35:56 +00:00
backend Bump version to v0.15.6 2025-11-03 11:27:27 +00:00
docker Squashed commit of the following: 2025-06-25 14:22:06 +01:00
docs Add treadmill sport type & bump version 2025-10-31 11:56:11 +00:00
frontend/app Bump version to v0.15.6 2025-11-03 11:27:27 +00:00
.dockerignore Add .dockerignore and update .gitignore; fix Garmin activities retrieval 2025-05-28 15:51:00 +02:00
.env.example Update env and compose examples, fix distance formatting 2025-09-18 10:24:40 +01:00
.gitignore Refactor Strava bikes import and improve gear deduplication 2025-09-25 14:28:03 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2025-05-03 23:07:45 +01:00
CONTRIBUTING.md Fixed typo in README file 2024-08-29 15:36:23 +01:00
crowdin.yml Refactor Chinese language codes and i18n file structure 2025-10-02 10:53:59 +01:00
docker-compose.yml-multiple-backends.example Update PGDATA path in postgres service example 2025-09-04 17:07:57 +01:00
docker-compose.yml.example Update env and compose examples, fix distance formatting 2025-09-18 10:24:40 +01:00
docker-compose.yml.secrets.example Add Docker secrets support for sensitive env vars 2025-10-21 14:39:36 +01:00
LICENSE Change license from GPL 3.0 to AGPL 3.0 or later 2024-12-28 21:47:29 +00:00
mkdocs.yml Moved docs to use material theme 2025-10-30 15:56:54 +00:00
README.md Add Apprise to README 2025-09-08 21:56:20 +01:00
ROADMAP.md Added a basic roadmap 2025-07-22 11:08:14 -05:00
screenshot_01.png Squashed commit of the following: 2025-09-10 10:22:15 +01:00
SECURITY.md Add Docker secrets support for sensitive env vars 2025-10-21 14:39:36 +01:00

Endurain

License GitHub release GitHub stars

A self-hosted fitness tracking service
Visit Endurain's Mastodon profile and Discord server.

Endurain Screenshot

Table of Contents

What is Endurain?

Endurain is a self-hosted fitness tracking service designed to give users full control over their data and hosting environment. It's similar to Strava but focused on privacy and customization. Built with:

  • Frontend: Vue.js, Notivue and Bootstrap CSS
  • Backend: Python FastAPI, Alembic, SQLAlchemy, Apprise, stravalib and python-garminconnect for Strava and Garmin Connect integration, gpxpy, tcxreader and fitdecode for .gpx, .tcx and .fit file import respectively
  • Database: MariaDB or PostgreSQL for efficient data management
  • Observability: Jaeger for basic tracing and monitoring
  • Integrations: Supports Strava and Garmin Connect. Manual upload of activities using .gpx, .tcx and .fit files are also supported

To deploy Endurain, a Docker image is available, and a comprehensive example can be found in the "docker-compose.yml.example" file provided. Configuration is facilitated through environment variables, ensuring flexibility and ease of customization.

For more information please see the Endurain's documentation.

Sponsors

A huge thank you to the project sponsors! Your support helps keep this project going.

Consider sponsoring Endurain on GitHub to ensure continuous development.

Contributing

Contributions are welcomed! Please open an issue to discuss any changes or improvements before submitting a PR. Check out the Contributing Guidelines for more details.

Help Translate

Endurain has multi-language support, and you can help translate it into more languages via Crowdin.

License

This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.