🧭

MyKTAMap

Cartographie souterraine

Une application web pour visualiser, annoter et exploiter un plan souterrain — carrière, catacombe, bâtiment, site industriel — à partir d’une simple image haute résolution. 100 % hors-ligne, gratuite, sans GPS, sans pistage.

Version v1.47.0PWA installableFR · EN · ESLicence CC BY-NC-SA 4.0

🧭 De quoi s’agit-il ?

MyKTAMap est née d’un besoin simple : avoir dans la poche une carte souterraine fiable, hors-ligne, et qui ne fuite pas. Pas un app store qui réclame l’accès à tes contacts pour afficher un plan. Pas un site qui te traque dès le premier clic. Pas un cloud qui décide demain de revendre tes traces.

Juste un fichier .zip qui contient le plan, ouvert dans un onglet de navigateur, qui fonctionne sans réseau et te laisse entièrement le contrôle. Techniquement, l’app s’appuie sur Leaflet en projection plane (L.CRS.Simple) : une carte interactive bâtie sur ton image, sans aucune coordonnée GPS.

Elle s’adresse à celles et ceux qui descendent — cataphiles, spéléos amateurs, urbexeurs prudents, secouristes formés au milieu souterrain, chercheurs en patrimoine. Elle ne remplace ni les plans papier annotés, ni les sorties guidées par les anciens, ni la mémoire collective : elle vient en complément, comme un calque numérique posé sur ces savoirs.

🔒 La philosophie

  • 🌐 100 % hors-ligne par défaut — une fois le plan chargé, l’app tourne sans réseau. En avion, dans le métro, ou à 30 m sous terre.
  • 🛡️ Zéro télémétrie — aucun service tiers ne te suit. Le seul appel externe possible est la mise à jour du code (et tu peux le couper). Tout est vérifiable dans l’Audit réseau intégré.
  • 📦 Tes données t’appartiennent — annotations, photos, mesures sont stockées localement dans le navigateur. Exportables à tout moment, effaçables en deux clics.
  • 🤝 Code ouvert — licence CC BY-NC-SA 4.0, auditable. Pas de boîte noire, pas de marketing.
  • ⚖️ Discrétion = respect — l’app ne contient aucun plan par défaut. À chacun de charger les siens, et de ne pas les diffuser hors du cercle de confiance.
Pas un GPS sous terre — la géoloc ne passe pas la roche. Le tracker est un podomètre + direction qui dérive : recale-toi souvent.
Pas une garantie de sécurité — la carte donne le chemin, pas l’oxygène. Tu restes seul juge des risques.
Pas un annuaire — l’app ne référence aucun lieu. Elle affiche ce que tu lui donnes, point.
Pas un réseau social — pas de compte, pas de profil. Tu choisis à qui tu envoies ton .zip.

🧩 Ce que l’application sait faire

🗺️ Lire le plan

Image HD, calques et icônes dynamiques, recherche unifiée (nom, ID, tag, état), coordonnées GPS optionnelles dans les popups, mode multi-niveau pour les carrières à étages.

✏️ Annoter

Points d’intérêt avec tags personnalisés et photos, zones polygonales (eau, remblais, effondrement, inaccessible), structures (piliers, murs, fronts de taille), mesures de distance et de surface.

🛣️ Tracer & éditer

Tracés Principal / Secondaire / Chemin, jonctions inter-niveaux, suppression granulaire (dernier point / dernier tracé / tout), Undo / Redo, éditeur de données JSON sous forme de tableau.

🧭 Se repérer

Tracker de position (capteurs inertiels), boussole, recalage manuel, heatmap de densité de passage, replay de session, navigation calée sur les tracés.

🗺️ Calculer un itinéraire

Plus court chemin (Dijkstra) sur le réseau de tracés, multi-niveau natif, contournement des zones inaccessibles, mode « Je suis perdu » et recherche de la sortie la plus proche.

🚨 Mode Secours

Coordination d’une opération de recherche : équipes, phases, suivi terrain temps réel, partage par QR code hors-réseau, rapport et PDF de briefing pour les secours externes.

🌍 Vue OSM

Superposition du plan souterrain sur la cartographie OpenStreetMap (géoréférencement 2 ancres), opt-in explicite, cache de tuiles hors-ligne. Idéal pour situer une entrée en surface.

📖 Mode Histoire

Une note libre (Markdown) et un PDF documentaire attachés au plan : contexte historique, récits, archives — embarqués dans l’export de session.

📤 Exporter & partager

Session JSON, image PNG/JPG avec légende positionnable, PDF imprimable (A0→A4), KMZ géolocalisé (Google Earth, OsmAnd, Locus, Avenza) et GPX.

🏗️ Créer un plan

Générateur de ZIP, démarrage sur image vierge, gestion dynamique des tags et icônes, conversion en tuiles « V2 » pour les très grosses images, datalayers importables en un clic.

🔐 Rester discret

PWA installable et 100 % hors-ligne, mode incognito, code PIN / Face ID local, code d’accès communautaire, kill-switch anti-fuite des plans, alertes de sécurité diffusables.

🐳 S’auto-héberger

Paquet Docker (Nginx + TLS auto-signé) pour faire tourner ta propre instance en une commande, multi-plateforme, avec tes propres plans.

📋 État des fonctionnalités

Fonctionnalité État
Affichage de plan HD + calques + icônes dynamiques
Points d’intérêt, tags personnalisés, photos
Zones, structures, tracés, mesures distance/surface
Mode multi-niveau (carrières à étages)
Itinéraires (Dijkstra) + sortie d’urgence
Mode Secours (équipes, phases, QR, PDF briefing)
Vue OSM géoréférencée (opt-in)
Exports PNG / JPG / PDF / KMZ / GPX
Multilingue FR / EN / ES
PWA hors-ligne (Service Worker) + installation iOS/Android/PC
Mode incognito, PIN / Face ID, kill-switch anti-fuite
Self-host Docker
Mode performance (tiling des images volumineuses)
Aide IA, statistiques de session, indicateur de batterie
Tracker de position par capteurs (sans GPS) ⚠️ Expérimental

🚀 Les grandes étapes

v1.47 — Nouveau loader

Écran de démarrage repensé autour d’une rose des vents vectorielle, plus épurée et nette, jusque dans l’icône de l’application.

Multilingue FR / EN / ES

Toute l’interface traduite, avec sélecteur de langue et bascule à chaud.

Mode Secours complet

D’un simple « je suis perdu » à une vraie console de coordination de recherche : équipes, phases, suivi temps réel, partage QR hors-réseau, rapports et PDF de briefing pour les pompiers.

Vue OSM & géoréférencement

Le plan souterrain projeté sur la carte du monde réel, en opt-in, avec mise en cache hors-ligne.

Multi-niveau & itinéraires

Carrières à étages, jonctions inter-niveaux, calcul du plus court chemin et de la sortie la plus proche.

Mode Histoire & exports avancés

Documenter un plan (note + PDF) et l’exporter en PNG, PDF imprimable, KMZ géolocalisé ou GPX.

Self-host Docker

Faire tourner sa propre instance privée en une commande.

Le journal détaillé, version par version, est consultable dans la documentation intégrée à l’application (modale 📖 Documentation).

🛠️ Sous le capot

MyKTAMap repose entièrement sur des briques open-source : Leaflet (moteur cartographique), JSZip (archives .zip), jsPDF (PDF imprimables), html2canvas (capture pour le briefing secours), OpenStreetMap & ses contributeurs (Vue OSM, attribution ODbL respectée), et l’algorithme de Dijkstra (1959) pour les itinéraires. Le tout en HTML/CSS/JavaScript vanilla, sans framework ni bundler — une PWA qui tient dans un onglet.

🤝 Participer au projet

Pour rejoindre le projet et obtenir l’accès au dépôt GitHub, envoie-moi un message privé sur Instagram. Beta-testeurs terrain, retours d’usage et contributions bienvenus.

📩 M’écrire sur Instagram

MyKTAMap · développée par KARMA (Flavien VIDAL) · licence CC BY-NC-SA 4.0 (usage commercial interdit sans accord).
Co-développée avec l’assistance de Claude (Anthropic). Aucune donnée n’est collectée — ces lieux appartiennent à leur histoire, leur préservation dépend de la discrétion de ceux qui les fréquentent.