From 5f5c08798aa60e039b45097cad9a5f1c97627ec4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Baylac-Jacqu=C3=A9?= Date: Thu, 24 Feb 2022 11:20:49 +0100 Subject: [PATCH] webapp: add readme --- webapp/README.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 webapp/README.md diff --git a/webapp/README.md b/webapp/README.md new file mode 100644 index 0000000..fc522eb --- /dev/null +++ b/webapp/README.md @@ -0,0 +1,41 @@ +# Application Web + +https://tools.aquilenet.fr/ftth-ipe-map/ + +Cette application web expose les données issues de la BDD générée par `../data-ingest/ingest` sous la forme d'une carte interactive. + +Dépendances: `poetry`, `sqlite3`, `mod-spatialite`. + +Toutes les données sont gérées localement à l'exception du geocodeur qui utilise [photon de komoot](https://photon.komoot.io/). + +# Environnement de développement + +Il faut faudra installer au préalable `poetry`, `sqlite3`, `mod-spatialite` ou lancer le `nix-shell` à la racine de ce projet. + +Il vous faut ensuite générer une base de données des IPEs fournis par axione à l'aide du script `../data-ingest/ingest`. Enfin, il faudra pointer cette base de données à l'aide d'un fichier de config `./config.ini` (voir `./config.ini.sample` pour le template). + +Pour lancer le serveur de dev: +```sh +./run-dev-server +``` + +## Déployer sur Gaia + +Tous les fichiers necessaire au déploiement sur https://tools.aquilenet.fr/ftth-ipe-map/, à l'exception de la configuration Apache, sont présents dans ce dépôt git. + +Pour déployer ce dépôt, rendez-vous sur Gaia dans `/srv/www/ftth-ipe-map` puis lancez le script `./update` avec votre utilisateur habituel (ie. pas root) pour: + +1. Stopper le service qui tourne actuellement. +2. Mettre à jour le dépôt git sur `origin/master`. +3. Mettre à jour le service systemd `./ftth-ipe-map.service`. +4. Redémarrer le nouveau service. + +Si vous souhaitez déployer une branche autre que `origin/master`, editez le script et spécifiez la branche que vous souhaitez déployer dans la variable `gitBranch`. + +## Composants Utilisés + +- [Leaflet](https://leafletjs.com/): librairie qui nous permet d'afficher une carte interactive à partir des tiles ["FR" de openstreetmap.fr](https://wiki.openstreetmap.org/wiki/FR:Serveurs/tile.openstreetmap.fr#Fond_de_carte_.22FR.22). +- [Autocomplete](https://autocomplete.trevoreyre.com/#/): librairie qui nous fournit un composant HTML/Javascript d'autocomplete. Nous l'utilisons pour l'interface utilisateur du geocodeur. +- [Flask](https://flask.palletsprojects.com/en/2.0.x/): micro-framework dans lequel le backend est implémenté. +- [Spatialite](https://www.gaia-gis.it/fossil/libspatialite/index): extension geodb pour SQLite dont on se sert pour réaliser des requêtes spatiales sur notre base de données. +- [Komoot Photon](https://photon.komoot.io/): API de geocodage dont on se sert pour récupérer une position GPS à partir d'une addresse postale.