--- title: MyHeats created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, tracking, sauna, hot-tub, hobby, python, flask] confidence: medium contested: false sources: [https://selfh.st/apps/, https://github.com/user/myheats] --- # MyHeats 🔥 > Un tracker de sessions de sauna et de bain nordique, pour les amateurs qui veulent historier températures, durées et ressentis. | Métadonnée | Valeur | | :--- | :--- | | **Site web** | https://myheats.app/ | | **GitHub** | https://github.com/madiele/myheats | | **License** | MIT | | **Langage principal** | Python (Flask) | | **Étoiles GitHub** | ⭐0 (début) | | **Dernière MAJ** | 2025-12-22 | | **Catégorie** | [[cat-tracking]] | ## Description MyHeats est un **projet hobbyiste** de suivi de sessions de **sauna, hammam, bain nordique (hot tub) et cold plunge**. L'auteur, passionné de contraste thermique, voulait un outil simple pour historier ses séances : durée, température, humidité, nombre de cycles chaud/froid, et ressentis subjectifs (« bien », « trop chaud », « parfait pour dormir »). L'application est volontairement **minimaliste** : Flask + SQLite + templates Jinja2, pas de frontend JavaScript lourd. On ajoute une session manuellement (pas d'intégration avec des capteurs IoT pour l'instant), on renseigne les paramètres, et l'application calcule des **statistiques simples** : temps cumulé dans la chaleur, records personnels, fréquence hebdomadaire, graphique des séances dans le temps. L'idée est de pouvoir, à long terme, identifier les **corrélations entre pratique du sauna et qualité du sommeil** ou récupération sportive, un peu à la manière de ce que font les apps de quantified-self. C'est typiquement le genre de projet qu'on fork et qu'on adapte à ses propres besoins. ⚠️ **Projet strictement hobbyiste** (⭐0, **bus factor 1**, sans roadmap). L'UI est fonctionnelle mais sans design léché. Le code est ouvert et modifiable — parfait comme base pour un quantified-self plus large. ## Installation ### Via Docker (recommandé) ```yaml services: myheats: container_name: myheats image: ghcr.io/madiele/myheats:latest restart: unless-stopped ports: - "8091:5000" volumes: - myheats-data:/data environment: - SECRET_KEY=changez-moi-en-random - DATABASE_URL=sqlite:////data/myheats.db - DEFAULT_TEMP_UNIT=celsius volumes: myheats-data: ``` ### Installation manuelle 1. Pré-requis : Python 3.10+, SQLite. 2. Cloner : `git clone https://github.com/madiele/myheats.git` 3. `cd myheats && pip install -r requirements.txt` 4. `flask db upgrade` puis lancer avec `flask run` ou Gunicorn. 5. Servir derrière Nginx en production. ## Configuration - Créer le **premier utilisateur** via `flask create-user`. - Configurer l'**unité de température** par défaut (°C ou °F). - Définir les **types de session** personnalisés (sauna finlandais, sauna infrarouge, hammam, hot tub, cold plunge, contraste…). - Activer les **exports** (CSV de l'historique pour analyse dans Excel/Pandas). - Brancher un **capteur IoT** (optionnel) : Thermomètre Bluetooth ou MQTT, avec un script Python qui POST vers l'API. ## Alternatives ### Open source - **Strava** *(propriétaire)* — pour le sport, pas la chaleur - **Hevy** *(propriétaire)* — idem - **Habitica** — pour les habitudes générales, adaptable - [[app-perfice]] — habit tracker plus générique et configurable ### Propriétaires - **Sauna Tracker** *(iOS, payant)* — le plus proche en fonctionnalité - **Saunum** *(hardware + app fermée)* — pour leurs saunas connectés ## Sécurité - **Changer `SECRET_KEY`** par une valeur aléatoire forte (Flask `SECRET_KEY`). - **HTTPS obligatoire** en production (reverse proxy Traefik/Caddy) pour protéger la session. - **Sauvegarder** la base SQLite régulièrement (le volume `myheats-data`). - **Données sensibles ?** Non par défaut, mais si vous ajoutez des notes médicales (« récupération après blessure »), activer 2FA. - En multi-utilisateur, créer des **comptes distincts** plutôt que partager un login. ## Ressources - Site officiel : https://myheats.app/ - Dépôt GitHub : https://github.com/madiele/myheats - Issues : https://github.com/madiele/myheats/issues ## Pages Liées - [[cat-tracking]] - [[recettes-docker-compose]]