Skip to content
Snippets Groups Projects

todo list

1 file
+ 74
72
Compare changes
  • Side-by-side
  • Inline
+ 74
72
**README**
**README**
==========
==========
# Run the server-side FastAPI app
# Run the server-side FastAPI app
## In development mode
## In development mode
You can start a virtual environment with the following instructions.
You can start a virtual environment with the following instructions.
```sh
```sh
$ cd backend
$ cd backend
$ python3.9 -m venv env
$ python3.9 -m venv env
$ source env/bin/activate
$ source env/bin/activate
```
```
Then you need to install the dependencies by executing `pip install -r requirements.txt`
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.
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`
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)
Navigate to [http://localhost:3001](http://localhost:3001)
<br/>
<br/>
### *Le linter*
### *Le linter*
So the new commits can be deployed, you'll need to use the linter from backend :
So the new commits can be deployed, you'll need to use the linter from backend :
`pycodestyle --config=./setup.cnf --exclude=./env ./`
`pycodestyle --config=./setup.cnf --exclude=./env ./`
You can use autoformat with autopep8 running :
You can use autoformat with autopep8 running :
`autopep8 --in-place --global-config=./setup.cnf --recursive --exclude=./env --aggressive ./`
`autopep8 --in-place --global-config=./setup.cnf --recursive --exclude=./env --aggressive ./`
<br/>
<br/>
## In production mode
## In production mode
Build the docker image : `docker-compose build`
Build the docker image : `docker-compose build`
Run the server, `docker-compose up -d`
Run the server, `docker-compose up -d`
<br/>
<br/>
# Run the client-side React app in a different terminal window:
# Run the client-side React app in a different terminal window:
```sh
```sh
$ cd frontend
$ cd frontend
$ npm install
$ npm install
$ npm run start
$ npm run start
```
```
Navigate to [http://localhost:3000](http://localhost:3000)
Navigate to [http://localhost:3000](http://localhost:3000)
<br/>
<br/>
# TODO
# TODO
## Coté algo
## Coté algo
- Faire tournez le script de comptage que pendant les créneaux d'ouvertures du RU associé
- 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 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
- 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)
- 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
## Coté dev
- Ajouter une table pour les fermetures exceptionnelles
- Ajouter une table pour les fermetures exceptionnelles
- Améliorer l'interface utilisateur avec le timer
- 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)
- 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
- Permettre de définir les masques proprement et de manière à pouvoir généraliser à d'autre RU
- Documenter le projet au maximum
- 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 à opensourcer (ça peut permettre d'étendre plus facilement à d'autre RU)
- 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
- 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
## Coté camera et réseau
- Démarches pour mettre en place les caméras et config 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
## Coté com et récolte des données
- Exploitation des données après récupération : visualisation et stratégie d'adaptation du modèle
- Préparer la com pour la mise en place : mail NL, affiches, panneaux numérique DPIET
- Réfléchir à un nom pour le service
- Exploitation des données après récupération : visualisation et stratégie d'adaptation du modèle
- Motiver des gens à reprendre le projet
- 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)
Loading