Initial vault setup
This commit is contained in:
@@ -0,0 +1,157 @@
|
||||
---
|
||||
title: FitTrackee
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, fitness, activity-tracker, python, flask, gpx, strava-alternative]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=fitness, https://github.com/FitTrackee/FitTrackee]
|
||||
---
|
||||
|
||||
# FitTrackee 🚴
|
||||
|
||||
> Tracker d'activités sportives **auto-hébergeable** écrit en Python/Flask, avec import GPX/TCX, multi-utilisateurs et interface épurée. Alternative francophone à Strava.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://fittrackee.org/ |
|
||||
| **GitHub** | https://github.com/FitTrackee/FitTrackee |
|
||||
| **License** | AGPL-3.0-or-later |
|
||||
| **Langage** | Python (Flask + Vue.js) |
|
||||
| **Étoiles** | ⭐74 (selfh.st rank) |
|
||||
| **Dernière MAJ** | 2026-05-22 |
|
||||
| **Catégorie** | [[cat-fitness]] |
|
||||
|
||||
## Description
|
||||
|
||||
**FitTrackee** est une application web **libre** de suivi d'activités sportives (course, vélo, randonnée, natation, etc.) conçue par un développeur français (Samy Rabih). Elle permet d'**importer des traces GPX, TCX et FIT**, d'analyser les performances (distance, dénivelé, vitesse, fréquence cardiaque), et de partager ponctuellement des segments avec d'autres utilisateurs.
|
||||
|
||||
Fonctionnalités clés :
|
||||
- **Import de fichiers** GPX, TCX, FIT (depuis montre/GPS)
|
||||
- **Carte OpenStreetMap** des activités avec profil altimétrique
|
||||
- **Statistiques** par sport, période, équipement
|
||||
- **Multi-utilisateurs** avec comptes isolés
|
||||
- **API REST documentée** (OpenAPI)
|
||||
- **Équipements** (vélo, chaussures) avec suivi de kilométrage
|
||||
- **Segments** : découpage manuel de tronçons
|
||||
- **Notifications par e-mail**
|
||||
- **Mode sombre** et interface responsive
|
||||
|
||||
L'**architecture** repose sur un backend **Flask + SQLAlchemy** (PostgreSQL ou SQLite), un **worker Dramatiq + Redis** pour les tâches asynchrones (envoi d'e-mails, génération de tuiles de carte), et un frontend **Vue.js 3**. Le projet est **français à l'origine**, ce qui garantit une **traduction de qualité** et une documentation claire pour la communauté FR.
|
||||
|
||||
## Installation
|
||||
|
||||
### Via Docker Compose
|
||||
|
||||
```yaml
|
||||
services:
|
||||
fittrackee-db:
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_USER: fittrackee
|
||||
POSTGRES_PASSWORD: ${DB_PASSWORD:-changeme}
|
||||
POSTGRES_DB: fittrackee
|
||||
volumes:
|
||||
- fittrackee_db:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U fittrackee"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
fittrackee-redis:
|
||||
image: redis:7-alpine
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- fittrackee_redis:/data
|
||||
|
||||
fittrackee-backend:
|
||||
image: fittrackee/fittrackee:latest
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
fittrackee-db:
|
||||
condition: service_healthy
|
||||
fittrackee-redis:
|
||||
condition: service_started
|
||||
environment:
|
||||
FLASK_APP: fittrackee
|
||||
DATABASE_URL: postgresql://fittrackee:${DB_PASSWORD:-changeme}@fittrackee-db:5432/fittrackee
|
||||
REDIS_URL: redis://fittrackee-redis:6379
|
||||
SECRET_KEY: ${FLASK_SECRET_KEY:-changez-moi}
|
||||
EMAIL_URL: smtplogin://user:pass@smtp.example.com:587
|
||||
TILE_SERVER_URL: https://tile.openstreetmap.org/{z}/{x}/{y}.png
|
||||
WEATHER_API_KEY: ${WEATHER_API_KEY:-}
|
||||
volumes:
|
||||
- fittrackee_uploads:/usr/src/app/uploads
|
||||
ports:
|
||||
- "5000:5000"
|
||||
|
||||
fittrackee-worker:
|
||||
image: fittrackee/fittrackee:latest
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- fittrackee-backend
|
||||
command: dramatiq fittrackee.worker
|
||||
environment:
|
||||
DATABASE_URL: postgresql://fittrackee:${DB_PASSWORD:-changeme}@fittrackee-db:5432/fittrackee
|
||||
REDIS_URL: redis://fittrackee-redis:6379
|
||||
volumes:
|
||||
- fittrackee_uploads:/usr/src/app/uploads
|
||||
|
||||
volumes:
|
||||
fittrackee_db:
|
||||
fittrackee_redis:
|
||||
fittrackee_uploads:
|
||||
```
|
||||
|
||||
### Installation manuelle
|
||||
|
||||
Voir la documentation officielle https://docs.fittrackee.org/installation.html (sections Docker, manuel Python, etc.).
|
||||
|
||||
## Configuration
|
||||
|
||||
- `DATABASE_URL` : PostgreSQL ou SQLite (SQLite possible pour petit usage)
|
||||
- `REDIS_URL` : pour la file de tâches
|
||||
- `SECRET_KEY` : secret Flask (obligatoire en production)
|
||||
- `EMAIL_URL` : pour notifications (format `smtplogin://user:pass@host:port`)
|
||||
- `TILE_SERVER_URL` : serveur de tuiles (par défaut OSM, peut être changé)
|
||||
- `WEATHER_API_KEY` : optionnel, pour récupérer la météo des activités
|
||||
|
||||
L'**admin** se crée en CLI : `flask users create --admin`.
|
||||
|
||||
## Alternatives
|
||||
|
||||
**Open source** :
|
||||
- [[app-wger]] : orienté routines d'entraînement, pas activités outdoor
|
||||
- [[app-endurain]] : clone Strava plus récent, Go
|
||||
- [[app-statistics-for-strava]] : si vous voulez juste des stats sur vos données Strava
|
||||
- **Runalyze** : allemand, riche, plus lourd à héberger
|
||||
|
||||
**Propriétaire** :
|
||||
- **Strava** : leader, segments sociaux, gratuit avec limitations
|
||||
- **Garmin Connect** : si écosystème Garmin
|
||||
- **Komoot** : orienté randonnée/vélo itinérance
|
||||
|
||||
## Sécurité
|
||||
|
||||
- **Changer toutes les clés** par défaut avant déploiement
|
||||
- Mettre en place **HTTPS** (reverse proxy type Caddy/Traefik)
|
||||
- **Sauvegardes** : `pg_dump` quotidien + volume `fittrackee_uploads`
|
||||
- Les fichiers GPX/FIT uploadés peuvent contenir des **données de localisation précises** : sécuriser l'accès
|
||||
|
||||
## Ressources
|
||||
|
||||
- **GitHub** : https://github.com/FitTrackee/FitTrackee
|
||||
- **Site officiel** : https://fittrackee.org/
|
||||
- **Documentation** : https://docs.fittrackee.org/
|
||||
- **selfh.st** : https://selfh.st/apps/?tag=fitness
|
||||
|
||||
## Pages Liées
|
||||
|
||||
- [[cat-fitness]]
|
||||
- [[recettes-docker-compose]]
|
||||
- [[app-wger]] — orienté routines
|
||||
- [[app-endurain]] — clone Strava
|
||||
- [[app-statistics-for-strava]] — pour les stats Strava
|
||||
Reference in New Issue
Block a user