Skip to main content

Application structure

Here you will understand how the NOÉ application is structured and what technologies we use.

Division into micro-services

The application is divided into five micro-services:

  • two frontends that live in /orga-front (orga frontend) and /inscription-front (participant frontend)
  • an API backend that lives in /api
  • a second backend dedicated to AI computations that lives in /ia-back
  • a website containing the documentation, which lives in website

Before, the AI backend was used at the beginning of the application but has fallen into disuse and is no longer maintained for the moment.

Application structure

Technical stack

Orga and participant frontends - /orga-front and /inscription-front

  • Base: Javascript
  • Frameworks: ReactJS / Redux
  • Graphic library: Ant.Design

API and IA backend servers - /api and /ia-back

  • Base: NodeJS / Typescript (compiled in Javascript with esbuild)
  • Framework: Express
  • Database: Mongoose (MongoDB database)

Documentation website - /website

Based on Docusaurus.

Containerization

The application is fully containerized in Docker containers. We use Docker Compose to manage the launch of the containers.

The application configuration is described in the docker-compose.yml file at the root of the project.

How to install it?

For Linux, see here for Docker and here for Docker Compose

Translated with www.DeepL.com/Translator (free version)