htmx/architecture_readme.md
2026-04-01 21:36:06 +02:00

3.7 KiB

📄 Structure du Projet et Diagrammes Mermaid

Fichier architecture.md contenant une description complète de l'application avec 6 diagrammes Mermaid :

📁 Structure du Dossier

Point-Cloud-Classifier-HTMX/
├── agents.md
├── docker-compose.yml          # Configuration Docker (2 services)
├── Dockerfile.builder
├── Dockerfile.entwine          # Backend avec Entwine
├── Dockerfile.frontend         # Frontend avec HTMX
├── pyproject.toml
├── requirements.txt
├── Roo.md                      # Contexte du projet
├── architecture.md             # 📄 NOUVEAU - Documentation complète
├── backend/
│   ├── __init__.py
│   ├── config.py               # Configuration backend
│   ├── main.py                 # FastAPI backend
│   ├── data/
│   │   ├── uploads/            # Fichiers LAS bruts
│   │   └── ept/                # Nuages convertis
│   ├── routes/
│   │   ├── upload.py           # Routes upload
│   │   ├── viewer.py           # Routes visualisation
│   │   └── admin.py            # Routes admin
│   ├── services/
│   │   ├── converter.py        # Conversion Entwine
│   │   ├── manifest.py         # Gestion manifest.json
│   │   └── html_generator.py   # Génération HTML Potree
│   └── static/
│       └── potree/             # Assets Potree
└── frontend/
    ├── api_client.py           # Client HTTP async
    ├── config.py               # Configuration frontend
    ├── main.py                 # FastAPI frontend
    ├── components/             # Composants HTMX
    ├── routes/
    │   ├── upload.py
    │   ├── viewer.py
    │   ├── admin.py
    │   └── crop.py
    ├── static/
    │   └── potree/
    └── templates/
        ├── index.html
        └── partials/
            ├── cloud_list.html
            ├── viewer.html
            ├── crop.html
            ├── backend_config.html
            ├── debug_panel.html
            ├── health_status.html
            └── upload_result.html

🔄 Diagrammes Mermaid

1. Vue d'ensemble de l'architecture

Architecture globale avec Frontend (8091), Backend (8000), Outils externes (Potree, PDAL, Entwine) et Stockage.

2. Flux principal d'upload et conversion

SequenceDiagram montrant les 14 étapes : Upload → Vérification → Conversion Entwine → Manifeste → Visualisation.

3. Flux de visualisation

Flowchart LR de la liste des nuages → sélection → embed Potree → chargement EPT → visualisation 3D.

4. Flux de crop (réduction du nuage)

SequenceDiagram du traitement PDAL : Sélection box 3D → Filtre LAS → Conversion EPT → Nouveau nuage.

5. Architecture des routes

Mindmap détaillant toutes les routes Frontend et Backend avec leurs endpoints.

6. Diagramme complet des interactions

Flowchart TB complet avec 26 étapes numérotées, classes colorées par type (utilisateur, frontend, backend, outils, stockage, externe).

7. Structure des dossiers EPT

Graph TD montrant la structure interne d'un dossier EPT (manifest, ept.json, tuiles, hiérarchie, sources).

🎯 Fonctionnalités Documentées

  1. Upload et Conversion - LAS/LAZ/PLY → EPT
  2. Visualisation 3D - Potree Viewer WebGL
  3. Administration - Liste, Debug, Suppression
  4. Traitement PDAL - Crop 3D
  5. Configuration Dynamique - URLs configurables
  6. Monitoring - Health check, espace disque

Le fichier architecture.md est prêt à être utilisé comme contexte pour un agent AI et pour la revue des fonctionnalités.