Aller au contenu principal

Structure de l'application

Vous comprendrez ici comment se structure l'application NOÉ et quelles technologies nous utilisons.

Division en micro-services

L'application est divisée en cinq micro-services :

  • deux frontends qui vivent dans /orga-front (frontend orga) et /inscription-front (frontend participant⋅e)
  • un backend API qui vit dans /api
  • un second backend dédié aux calculs d'IA qui vit dans /ia-back
  • un site internet contenant la documentation, qui vit dans website

Avant, le backend IA était utilisé au début de l'application mais est tombé en désuétude et n'est plus maintenu pour l'instant.

Structure de l'application

Stack technique

Frontends orga et participant⋅e - /orga-front et /inscription-front

  • Base : Javascript
  • Frameworks : ReactJS / Redux
  • Librairie graphique : Ant.Design

Serveurs backend API et IA - /api et /ia-back

  • Base : NodeJS / Typescript (compilé en Javascript avec esbuild)
  • Framework : Express
  • Base de données : Mongoose (base MongoDB)

Site internet de documentation - /website

Basé sur Docusaurus.

Conteneurisation

L'application est entièrement conteneurisée dans des containers Docker. Nous utilisons Docker Compose pour gérer le lancement des containers.

La configuration de l'application est décrite dans le fichier docker-compose.yml à la racine du projet.

Comment installer ça ?

Pour Linux, allez voir ici pour Docker et là pour Docker Compose