Initial vault setup
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
---
|
||||
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]]
|
||||
Reference in New Issue
Block a user