Une plateforme locale pour concevoir, exécuter et analyser des scénarios agroforestiers.
Le projet réunit un moteur de simulation Python, une API FastAPI, une interface web Next.js et une interface Streamlit historique. Il permet de configurer des parcelles, d’explorer différents scénarios de plantation et de consulter leurs résultats sous forme de tableaux, de graphiques et de visualisations 2D ou 3D.
Cette édition GitHub est volontairement légère. Les modèles 3D réalistes, les sorties de simulation, les dépendances installées, les builds et les installateurs Windows sont distribués séparément.
- création et configuration de scénarios agroforestiers ;
- moteur de simulation V3 basé sur Python ;
- API locale documentée avec FastAPI ;
- interface moderne développée avec Next.js ;
- interface d’exploration historique sous Streamlit ;
- analyse des résultats par tableaux et graphiques ;
- visualisation des plantations en 2D ;
- visualisation 3D simplifiée, utilisable sans modèles externes ;
- préparation d’une distribution Windows hors ligne.
| Composant | Emplacement | Rôle |
|---|---|---|
| Interface web | apps/web_terrain_v2/ |
Application Next.js principale |
| API | V3/api_server/ |
Services HTTP FastAPI |
| Moteur | V3/backend/ |
Calcul et orchestration des simulations |
| Interface historique | V3/frontend/ |
Application Streamlit |
| Données | V3/db/ |
Référentiels climat, sols et espèces |
| Visualisation 3D | V3/3d/ |
Configuration des assets optionnels |
| Application desktop | desktop/windows_offline/ |
Code de packaging Windows |
| Documentation | guide/ |
Guides et ressources utilisateur |
- Python 3.10 ou version ultérieure ;
- Node.js 20 ou version ultérieure ;
- npm ;
- PowerShell sous Windows.
Depuis la racine du projet :
.\setup_quickstart.ps1
.\start_local.ps1Une fois les services démarrés :
| Service | Adresse |
|---|---|
| Application web | http://127.0.0.1:3010 |
| API | http://127.0.0.1:8000 |
| Documentation de l’API | http://127.0.0.1:8000/docs |
Les fichiers .glb ne sont pas nécessaires au fonctionnement du cœur de l’application. Sans ces assets, il reste possible de :
- créer et lancer des simulations ;
- exploiter le moteur V3 et l’API ;
- consulter les résultats, graphiques et tableaux ;
- utiliser la visualisation 2D ;
- afficher une scène 3D simplifiée avec des primitives.
Pour activer le rendu détaillé avec des arbres réalistes, placez les modèles .glb dans :
V3/3d/
Le fichier V3/3d/assets_map.json décrit les chemins attendus par l’application.
Afin de garder le dépôt rapide à cloner, les éléments suivants ne sont pas versionnés :
- modèles et assets 3D lourds ;
- dépendances installées (
node_modules) ; - builds et bundles générés ;
- sorties et historiques de simulation ;
- fichiers d’environnement locaux ;
- binaires et installateurs Windows ;
- archives et exports volumineux.
Les assets 3D peuvent être distribués séparément dans une GitHub Release. Consultez README_GITHUB.md pour les consignes de publication.
Avant toute publication, le contenu candidat peut être contrôlé sans installer ni construire l’application :
.\audit_github_payload.ps1Ce script vérifie notamment l’absence d’artefacts générés, de binaires et de fichiers volumineux interdits.