Skip to content
Snippets Groups Projects
Select Git revision
  • main default
1 result

eatfast-website

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Aymeric Chaumont authored
    todo list
    
    See merge request !45
    6d9f96be
    History
    Name Last commit Last update
    backend
    frontend
    .gitignore
    .gitlab-ci.yml
    README.md

    README

    Run the server-side FastAPI app

    In development mode

    You can start a virtual environment with the following instructions.

    $ 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


    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 ./


    In production mode

    Build the docker image : docker-compose build
    Run the server, docker-compose up -d


    Run the client-side React app in a different terminal window:

    $ cd frontend
    $ npm install
    $ npm run start

    Navigate to http://localhost:3000


    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)