Retour aux projets
// 001
Fiche projet

Plateforme d'inscription et de gestion de formations

Catalogue, inscriptions, présences et exports réunis dans un outil utilisé par un organisme de formation.

Cette plateforme permet à un organisme de formation de publier son catalogue, de prendre les inscriptions en ligne et de suivre les sessions depuis une administration unique. Le client est resté confidentiel, mais le périmètre couvre les formations physiques, les webinaires, les entreprises et les formateurs.

Schéma du parcours d'inscription, du catalogue au pilotage
Client
Client confidentiel
Secteur
Formation professionnelle
Année
2022
// 002
Contenu du projet

Le contexte

Cette plateforme est utilisée par un organisme de formation. Elle publie le catalogue, prend les inscriptions en ligne et donne à l'administration le suivi des sessions. Les formations physiques et les webinaires y sont listés avec les lieux, les formateurs, les participants, les entreprises inscrites et les statuts d'inscription.

Le projet a été développé entre 2018 et 2022, puis maintenu ponctuellement. Le client a choisi de rester anonyme. Les visuels de cette fiche sont donc des schémas du parcours et des rôles, sans capture de l'application et sans nom d'organisation.

Le parcours d'inscription

Un participant peut s'inscrire seul à une session depuis le catalogue public. Un administrateur ou une entreprise peut inscrire plusieurs apprenants d'un coup, puis mettre à jour les présences depuis l'administration.

Chaque inscription garde le lien entre la session, le participant, l'entreprise et la facture. Les statuts permettent de savoir si une place est confirmée, en attente ou annulée. Les listes se filtrent par session, entreprise et statut, ce qui évite de parcourir un export complet pour retrouver un apprenant.

Le tableau de bord regroupe les formations par mois, les inscriptions, les apprenants et les entreprises. Les administrateurs voient l'ensemble. Les entreprises ont un accès restreint à leurs propres données.

Les exports reprennent les inscriptions d'une session avec les coordonnées utiles, le statut et l'entreprise. L'administration peut donc préparer une feuille de présence ou un suivi de facturation sans reconstruire la liste à la main.

Le modèle sépare la formation et la session. Une formation décrit le contenu, la durée et le public. Une session ajoute la date, le lieu, le formateur et les places disponibles. Une inscription relie un apprenant, une session et éventuellement une entreprise. Cette séparation permet de publier plusieurs sessions d'une même formation sans dupliquer le contenu.

Une API GraphQL unique

Le serveur est en ASP.NET Core avec Entity Framework Core et PostgreSQL. L'API GraphQL, construite avec HotChocolate, expose les formations, les sessions, les inscriptions, les apprenants, les formateurs et les statistiques. Les mutations passent par une couche de validation et de règles métier.

Les requêtes et les mutations sont couvertes par des tests d'intégration. Les tests couvrent aussi les cas d'autorisation, pas seulement le chemin heureux. Un participant ne peut pas lire les données d'une autre entreprise, et un formateur ne voit que les sessions qui le concernent.

Côté client, l'interface est une application React en TypeScript, avec Ant Design pour les tableaux, les formulaires et le tableau de bord. Les types sont générés depuis le schéma GraphQL, ce qui évite de maintenir les contrats à la main. Le site est disponible en français et en néerlandais.

Le catalogue public distingue les formations et les sessions. Une formation peut avoir plusieurs dates, plusieurs lieux et plusieurs formateurs. Les webinaires suivent le même modèle, avec un lien Zoom à la place d'une adresse. Les entreprises peuvent inscrire plusieurs apprenants sur une même session, avec une facture groupée.

Les intégrations

Trois intégrations complètent l'ensemble:

  • Zoom pour les webinaires;
  • SendGrid pour les emails de confirmation et de rappel;
  • NPOI pour les exports Excel.

L'ensemble tourne dans Docker et se déploie via Azure Pipelines. La maintenance ponctuelle a permis de suivre les évolutions de l'organisme sans reconstruire l'application à chaque changement de catalogue.

Les emails de confirmation partent au moment de l'inscription, et les rappels suivent le calendrier des sessions. Les exports Excel servent aux feuilles de présence et aux suivis administratifs.

Ce que le projet montre

Le projet tient sur une idée simple: un organisme de formation n'a pas besoin de trois outils pour publier un catalogue, inscrire des apprenants et suivre les présences. Il a besoin d'un modèle de données clair et de droits qui correspondent aux rôles réels.

Les schémas ci-dessous résument le parcours et la séparation des accès. Ils remplacent les captures d'écran pour préserver l'anonymat du client.

Schéma des rôles, du participant à l'administration

// 003

Prêt à construire quelque chose de solide ?

Parlons de votre projet. Sans engagement, sans pression — juste une conversation honnête sur ce dont vous avez besoin.