Une carte interactive pour trouver un abri en randonnée.
https://trouve-mon-refuge.liberateur.fr
- JavaScript 66%
- HTML 26.6%
- Shell 4.6%
- Dockerfile 2.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
/ tests (push) Successful in 23s
## Contexte La popup d'un refuge affiche ses coordonnées, mais il faut les recopier à la main pour les coller dans un GPS ou les partager. ## Impact Un bouton « Copier la localisation » apparaît dans la popup de chaque refuge. Un clic copie `lat, lon` en décimal à 5 décimales (identique à l'affichage) via `navigator.clipboard` : - feedback « Copié ! » pendant 2 s, puis retour au libellé initial ; - feedback « Copie impossible » en cas d'échec (permission refusée, contexte non sécurisé), sans fallback `execCommand` déprécié. Le clic est géré par délégation sur le conteneur de la carte, les coordonnées étant portées par un attribut `data-localisation` du bouton. ## Tests - [x] `node --test tests/*.test.mjs` — 58 tests verts, dont 3 nouveaux : présence du bouton et format copié, succès avec rétablissement du libellé (mock timers), échec signalé puis rétabli. Co-authored-by: Mateo Greil <mateo@go-electra.com> Reviewed-on: #27 |
||
| .forgejo/workflows | ||
| docker | ||
| tests | ||
| .dockerignore | ||
| AGENTS.md | ||
| compose.yml | ||
| Dockerfile | ||
| favicon.svg | ||
| index.html | ||
| README.md | ||
trouve-mon-refuge
Carte des cabanes et refuges (données refuges.info), publiée sur https://trouve-mon-refuge.liberateur.fr.
Lancer en local
docker compose up --build -d
Puis ouvrir http://localhost:8080. Le port peut être changé avec
TMR_PORT=18080 docker compose up --build -d.
La stack contient deux services et un volume partagé :
websert le site et monte le snapshot en lecture seule ;updaterrécupère les données et monte le snapshot en lecture/écriture ;refuges-dataconserve le snapshot entre les recréations de conteneurs.
Au premier démarrage, la page affiche son erreur réseau jusqu'à la création du
snapshot. Supercronic vérifie ensuite le snapshot tous les jours à 04:20 UTC ;
le téléchargement n'a lieu que si les données dépassent 7 jours. L'updater
devient unhealthy après 14 jours sans mise à jour réussie, sans arrêter nginx.
Tests
Lancés par la CI (Forgejo Actions) ; en local : node --test tests/*.test.mjs.