From cbc9fa71586558cfd67a82f4111f9974e54fcb33 Mon Sep 17 00:00:00 2001 From: Antoine Gaudron-Desjardins <antoine.gaudrondesjardins@student-cs.fr> Date: Tue, 19 Jul 2022 16:37:01 +0200 Subject: [PATCH] Update README.md --- README.md | 146 +++++++++++++++++++++++++++--------------------------- 1 file changed, 74 insertions(+), 72 deletions(-) diff --git a/README.md b/README.md index 5d0cbdd..9574dac 100644 --- a/README.md +++ b/README.md @@ -1,72 +1,74 @@ -**README** -========== -# Run the server-side FastAPI app -## In development mode -You can start a virtual environment with the following instructions. - -```sh -$ cd backend -$ python3.9 -m venv env -$ source env/bin/activate -``` - -Then you need to install the dependencies by executing `pip install -r requirements.txt` -Comment the app service in the docker-compose.yml then build and run the file. -Start the development server running `python -m uvicorn main:app --reload --port=3001 --host 0.0.0.0` - -Navigate to [http://localhost:3001](http://localhost:3001) - -<br/> - -### *Le linter* -So the new commits can be deployed, you'll need to use the linter from backend : -`pycodestyle --config=./setup.cnf --exclude=./env ./` -You can use autoformat with autopep8 running : -`autopep8 --in-place --global-config=./setup.cnf --recursive --exclude=./env --aggressive ./` - -<br/> - -## In production mode -Build the docker image : `docker-compose build` -Run the server, `docker-compose up -d` - -<br/> - -# Run the client-side React app in a different terminal window: - -```sh -$ cd frontend -$ npm install -$ npm run start -``` - -Navigate to [http://localhost:3000](http://localhost:3000) - -<br/> - -# TODO -## Coté algo -- Faire tournez le script de comptage que pendant les créneaux d'ouvertures du RU associé -- Mettre en place le script pour compter les caisses ouvertes -- Mettre en place le couplage des caméras (implique de pouvoir définir les masques proprement) dans le script de comptage de personnes -- Accéder à d'autre infos telle que l'API des cours sur demande à la DISI pour intégrer ça aux prédictions (ex: cours en promo complète juste implique plus d'attente) - -## Coté dev -- Ajouter une table pour les fermetures exceptionnelles -- Améliorer l'interface utilisateur avec le timer -- Protéger l'interface OpenAPI et mettre en place une interface admin pour les news et potentiellement modération (avec authentification) -- Permettre de définir les masques proprement et de manière à pouvoir généraliser à d'autre RU -- Documenter le projet au maximum -- Réfléchir à opensourcer (ça peut permettre d'étendre plus facilement à d'autre RU) -- Accorder la charte graphique si le service est intégré à d'autres appli (bordeau/blanc service de CS, charte graphique de VR) -- Réfléchir au système d'authentification, pour juste des commentaires l'authentification ViaRézo suffit mais CAS plus général dans les universités ou Shibboleth avec Renater - -## Coté camera et réseau -- Recherche d'un meilleur modèle de caméra par rapport aux contraintes réseau, d'angle de vue, de qualité d'image -- Démarches pour mettre en place les caméras et config réseau - -## Coté com et récolte des données -- Préparer la com pour la mise en place : mail NL, affiches, panneaux numérique DPIET -- Exploitation des données après récupération : visualisation et stratégie d'adaptation du modèle -- Réfléchir à un nom pour le service -- Motiver des gens à reprendre le projet +**README** +========== +# Run the server-side FastAPI app +## In development mode +You can start a virtual environment with the following instructions. + +```sh +$ cd backend +$ python3.9 -m venv env +$ source env/bin/activate +``` + +Then you need to install the dependencies by executing `pip install -r requirements.txt` +Comment the app service in the docker-compose.yml then build and run the file. +Start the development server running `python -m uvicorn main:app --reload --port=3001 --host 0.0.0.0` + +Navigate to [http://localhost:3001](http://localhost:3001) + +<br/> + +### *Le linter* +So the new commits can be deployed, you'll need to use the linter from backend : +`pycodestyle --config=./setup.cnf --exclude=./env ./` +You can use autoformat with autopep8 running : +`autopep8 --in-place --global-config=./setup.cnf --recursive --exclude=./env --aggressive ./` + +<br/> + +## In production mode +Build the docker image : `docker-compose build` +Run the server, `docker-compose up -d` + +<br/> + +# Run the client-side React app in a different terminal window: + +```sh +$ cd frontend +$ npm install +$ npm run start +``` + +Navigate to [http://localhost:3000](http://localhost:3000) + +<br/> + +# TODO +## Coté algo +- Faire tournez le script de comptage que pendant les créneaux d'ouvertures du RU associé +- Mettre en place le script pour compter les caisses ouvertes +- Mettre en place le couplage des caméras (implique de pouvoir définir les masques proprement) dans le script de comptage de personnes +- Accéder à d'autre infos telle que l'API des cours sur demande à la DISI pour intégrer ça aux prédictions (ex: cours en promo complète juste implique plus d'attente) + +## Coté dev +- Ajouter une table pour les fermetures exceptionnelles +- Améliorer l'interface utilisateur avec le timer +- Protéger l'interface OpenAPI et mettre en place une interface admin pour les news et potentiellement modération (avec authentification) +- Permettre de définir les masques proprement et de manière à pouvoir généraliser à d'autre RU +- Accorder la charte graphique si le service est intégré à d'autres appli (bordeau/blanc service de CS, charte graphique de VR) +- Réfléchir au système d'authentification, pour juste des commentaires l'authentification ViaRézo suffit mais CAS plus général dans les universités ou Shibboleth avec Renater + +## Coté camera et réseau +- Recherche d'un meilleur modèle de caméra par rapport aux contraintes réseau, d'angle de vue, de qualité d'image +- Démarches pour mettre en place les caméras et config réseau + +## Coté com et récolte des données +- Préparer la com pour la mise en place : mail NL, affiches, panneaux numérique DPIET +- Exploitation des données après récupération : visualisation et stratégie d'adaptation du modèle +- Réfléchir à un nom pour le service +- Motiver des gens à reprendre le projet + +## Documentation +- Documenter le projet au maximum +- Réfléchir à opensourcer (ça peut permettre d'étendre plus facilement à d'autre RU) -- GitLab