4.9 KiB
title: Fitbit Health Dashboard created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, fitness, fitbit, dashboard, python, fastapi, visualization] confidence: high contested: false sources: [https://selfh.st/apps/?tag=fitness, https://github.com/nicwortel/fitbit-health-dashboard]
Fitbit Health Dashboard ❤️
Dashboard personnel pour visualiser et analyser les données Fitbit (poids, sommeil, fréquence cardiaque, activité). Python/FastAPI avec graphiques riches en HTML/Plotly.
| Métadonnée | Valeur |
|---|---|
| Site web | https://nicwortel.nl/fitbit-health-dashboard/ |
| GitHub | https://github.com/nicwortel/fitbit-health-dashboard |
| License | MIT |
| Langage | Python (FastAPI) |
| Étoiles | ⭐70 (selfh.st rank) |
| Dernière MAJ | 2026-04-10 |
| Catégorie | cat-fitness |
Description
Fitbit Health Dashboard est une application web personnelle qui se connecte à l'API Fitbit et centralise toutes vos données de santé dans un tableau de bord interactif et esthétique. L'idée est de garder le contrôle sur les données de votre montre/balance Fitbit sans dépendre des changements d'interface de l'app officielle.
Fonctionnalités :
- Poids : courbes d'évolution, moyennes mobiles, IMC
- Sommeil : durée, phases, efficacité, régularité
- Activité : pas, calories, distance, étages, zones fréquence cardiaque
- Fréquence cardiaque au repos : tendances long terme
- Hydratation et alimentation (si trackés sur Fitbit)
- Plages de dates personnalisables
- Graphiques interactifs Plotly (zoom, export PNG)
- Mode sombre
L'architecture est volontairement simple : backend FastAPI qui parle à l'API Fitbit, SQLite pour le cache des données (très efficace, pas besoin de Postgres), et frontend statique avec htmx + Plotly pour des graphes riches sans build JS complexe. Le projet est maintenu par un développeur néerlandais et reste proche de ses besoins personnels (qualité > exhaustivité).
Installation
Via Docker Compose
services:
fitbit-dashboard:
build: https://github.com/nicwortel/fitbit-health-dashboard.git
restart: unless-stopped
environment:
FITBIT_CLIENT_ID: ${FITBIT_CLIENT_ID}
FITBIT_CLIENT_SECRET: ${FITBIT_CLIENT_SECRET}
FITBIT_REDIRECT_URI: http://localhost:8000/oauth/callback
SESSION_SECRET: ${SESSION_SECRET:-changez-moi-32-caracteres}
TZ: Europe/Paris
volumes:
- fitbit_data:/app/data
ports:
- "8000:8000"
volumes:
fitbit_data:
Étape préliminaire obligatoire
- Créer une app sur https://dev.fitbit.com/apps/new
- OAuth 2.0 Application Type : « Server »
- Callback URL :
http://localhost:8000/oauth/callback(adapter à votre domaine) - Renseigner les credentials dans
.env
Installation manuelle
git clone https://github.com/nicwortel/fitbit-health-dashboard.git
cd fitbit-health-dashboard
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # éditer avec vos credentials
uvicorn app.main:app --host 0.0.0.0 --port 8000
Configuration
FITBIT_CLIENT_ID/FITBIT_CLIENT_SECRET: credentials dev.fitbit.comFITBIT_REDIRECT_URI: doit correspondre EXACTEMENT à celui déclaré sur dev.fitbit.comSESSION_SECRET: secret pour les sessions Flask (32+ caractères)TZ: fuseau horaire (impacte les calculs de jour)- Le cache SQLite accélère drastiquement les affichages (l'API Fitbit est très limitée en quotas)
Alternatives
Open source :
- app-statistics-for-strava : même philosophie, mais pour Strava
- HealthData-Export / Gadgetbridge : pour exporter les données hors cloud
- QuantifyME : quantifier soi open source
Propriétaire :
- Fitbit app (officielle) : gratuite, complète, mais ferme le contrôle des données
- Fitbit Premium : ~9€/mois, analyses avancées
Notes : Google (propriétaire de Fitbit) a déprécié certaines API au profit de Google Fit — vérifier la compatibilité actuelle. Si vos appareils sont récents, privilégiez un export Google Takeout + app-statistics-for-strava.
Sécurité
- Credentials Fitbit = accès à toutes vos données de santé : ne jamais commit le
.env - Mettre en place HTTPS obligatoire (reverse proxy)
- Sauvegarder le volume
fitbit_data(SQLite) régulièrement - Considérer un firewall : ce dashboard est personnel, pas de besoin d'accès public
Ressources
- GitHub : https://github.com/nicwortel/fitbit-health-dashboard
- Démo de l'auteur : https://nicwortel.nl/fitbit-health-dashboard/
- API Fitbit : https://dev.fitbit.com/build/reference/
- selfh.st : https://selfh.st/apps/?tag=fitness
Pages Liées
- cat-fitness
- recettes-docker-compose
- app-statistics-for-strava — philosophie similaire, pour Strava
- app-fittrackee — pour activités outdoor