1
0
Fork
You've already forked endurain
0
Endurain is a self-hosted fitness tracking service designed to give users full control over their data and hosting environment
  • Python 73.1%
  • Vue 22.8%
  • JavaScript 3%
  • TypeScript 0.8%
  • PowerShell 0.1%
Find a file
2026年04月30日 23:01:12 +01:00
.forgejo fix: update runner name to 'codeberg-medium' in docker-publish.yml; optimize npm ci command in Dockerfile 2026年04月30日 22:41:45 +01:00
.github feat: add Docker publish workflow for automated image creation on release 2026年04月29日 14:57:49 +01:00
aux_scripts fix: update translation links to Codeberg Translate and remove Crowdin references 2026年04月29日 16:50:48 +01:00
backend refactor: enhance startup and shutdown event handling with lifespan context manager 2026年04月29日 15:38:39 +01:00
docker fix: update runner name to 'codeberg-medium' in docker-publish.yml; optimize npm ci command in Dockerfile 2026年04月30日 22:41:45 +01:00
docker_forgejo_runner fix: update vue-router version from 5.0.3 to 4.6.0 in package.json and package-lock.json 2026年04月30日 17:01:07 +01:00
docs fix: update translation badge links to Codeberg Translate 2026年04月29日 16:56:41 +01:00
frontend/app fix: remove lodash dependency from package.json and package-lock.json; update npm ci command in Dockerfile 2026年04月30日 22:28:10 +01:00
.dockerignore Add .dockerignore and update .gitignore; fix Garmin activities retrieval 2025年05月28日 15:51:00 +02:00
.env.example chore: update documentation links to Codeberg Pages 2026年04月29日 11:34:19 +01:00
.gitignore chore: update forgejo docker publish workflow and runner setup docs 2026年04月30日 15:24:36 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2025年05月03日 23:07:45 +01:00
CONTRIBUTING.md chore: update repository links from GitHub to Codeberg in documentation and templates 2026年04月29日 10:57:38 +01:00
docker-compose.yml-multiple-backends.example fix: update image reference from ghcr.io to codeberg.org in multiple docker-compose example files 2026年04月30日 23:01:12 +01:00
docker-compose.yml.example fix: update image reference from ghcr.io to codeberg.org in multiple docker-compose example files 2026年04月30日 23:01:12 +01:00
docker-compose.yml.secrets.example fix: update image reference from ghcr.io to codeberg.org in multiple docker-compose example files 2026年04月30日 23:01:12 +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 fix: readded mkdocs file and removed crowdin 2026年04月29日 16:54:46 +01:00
README.md fix: update translation badge links to Codeberg Translate 2026年04月29日 16:56:41 +01:00
renovate.json feat: add Renovate configuration for automated dependency updates 2026年04月29日 12:35:00 +01:00
ROADMAP.md Update docs and roadmap for features and trademark 2025年12月08日 16:02:56 +00:00
screenshot_01.png Update gallery photos with v0.14.0 changes 2025年09月06日 18:22:41 +01:00
SECURITY.md Add user IdP linking and MFA setup modals 2025年10月17日 16:19:57 +01:00
TRADEMARK.md Update TRADEMARK.md 2025年12月03日 22:24:47 +00:00

Endurain

Translation status License Release Stars Trademark Policy

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

Endurain Screenshot

🚀 Try the Demo

Experience Endurain without installation:

Demo URL: https://demo.endurain.com

  • Username: admin
  • Password: admin
  • Reset Schedule: Daily at midnight (Europe/Lisbon timezone)

⚠️ Note: The demo environment resets every day. Do not store important data.

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: 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.

Support Endurain's development on Codeberg.

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 Codeberg Translate.

License

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

Trademark Notice

Endurain® is a trademark of João Vitória Silva.

You are welcome to self-host Endurain and use the name and logo, including for personal, educational, research, or community (non-commercial) use.
Commercial use of the Endurain name or logos (such as offering paid hosting, products, or services) is not permitted without prior written permission.

See TRADEMARK.md for full details.

Built with ❤️ from Portugal | Part of the Endurain ecosystem