Entre février et juin 2024, j'ai développé une application de réseau social Atclub au sein d'une équipe de quatre personnes.
Ce projet s’inscrivait dans le cadre du projet CODEV à IMT Atlantique, un projet académique visant à concevoir et coder une solution répondant à un besoin réel.

Sur le campus, de nombreux réseaux sociaux étaient utilisés (WhatsApp, Messenger, Instagram, etc.), ce qui rendait la communication entre clubs très éparpillée.
Nous avons donc eu l’idée de centraliser tous ces échanges dans une seule application : Atclub.

Bien que le projet ait reçu de nombreux retours positifs, l’apparition des Communautés WhatsApp — qui permettent de regrouper plusieurs groupes dans une même interface — a limité les possibilités de déploiement d’Atclub à l’échelle de l’école.
Cependant, cette expérience a été très formatrice, notamment pour mes compétences en Firebase, gestion des données et développement backend.


Présentation du projet

Présentation PowerPoint du projet :
Télécharger la présentation


Le besoin

L’objectif était de rassembler tous les moyens de communication des clubs de l’école en un point central, afin d’éviter de devoir jongler entre plusieurs applications et de réduire le risque de manquer des informations importantes.


L'équipe

L’équipe de développement d’Atclub était divisée en deux pôles :

  • Frontend
  • Backend (dont je faisais partie)

Phase de conception

Architecture et design

Pendant la phase de conception, nous avons défini l’architecture logicielle du produit ainsi que les éléments graphiques et identitaires.

Nous avons également établi le modèle de données pour la base de données.

Ainsi que la palette de couleurs et le logo pour la partie Frontend.


Choix technologiques

Nous avons utilisé :

  • Flutter pour le développement multiplateforme (Android / iOS)
  • Firebase pour la base de données, l’authentification et l’hébergement
  • GitLab pour la collaboration et le suivi de version

L'architecture du logiciel se présentait sous cette forme :

L’avantage de Flutter était de nous permettre de déployer l’application sur Android et iOS, car il nous semblait essentiel qu’elle soit accessible à tous les élèves, quel que soit leur système d’exploitation.
Firebase, quant à lui, est une plateforme qui permet de gérer la base de données et l’authentification sans code tout en supportant un grand nombre d’utilisateurs.


Phase d’implémentation

Lors de la phase d’implémentation, notre application a progressivement évolué.

Code

Un exemple de code de l'application :

Base de données


Démo du produit

** Fonctionnalités principales **

  • Inscription et création de profil
  • Fil d’actualité des clubs
  • Messagerie instantanée
  • Recherche et filtres par centre d’intérêt
  • Gestion de clubs et publications

** Profils utilisateurs **

L'application diffère selon le type d’utilisateur.

On distingue trois profils :

  • Les membres des BDX
  • Les présidents de clubs
  • Les utilisateurs standards

Les fonctionnalités varient selon le type de profil.


** Vidéos de démonstration **

Des vidéos démos illustrent les principales fonctionnalités de l'application.

Vidéo : modification de profil

Vidéo : ajout d’un club (membre BDX)

Vidéo : ajout d’un post (président de club)

Vidéo complète de présentation de l’application


Perspectives de déploiement

Comme mentionné précédemment, Atclub n’a finalement pas été déployé en raison de l’apparition des Communautés WhatsApp, qui représentaient une alternative très attractive.
Il était donc difficile de convaincre les utilisateurs d’adopter une nouvelle application.

** Sécurité **

Pour envisager un déploiement, il est essentiel de garantir la sécurité des données utilisateurs. Firebase simplifie cette gestion.

La sécurité des données était un point central du développement.
Firebase permettait d’assurer une gestion fiable des accès et de l’authentification, mais nous avons aussi réfléchi à :

  • la sécurisation des échanges (HTTPS, règles Firestore)
  • la gestion des permissions (administrateurs, modérateurs, utilisateurs)
  • la protection des données personnelles

** Bêta tests **

Une procédure de bêta test a été mise en place pour évaluer l’ergonomie et l’intuitivité de l’application.
Les utilisateurs devaient accomplir des missions simples (créer un club, envoyer un message, modifier un profil, etc.) sans aide extérieure, afin d’évaluer la facilité de prise en main.

Les retours ont permis d’ajuster :

  • la navigation (barre de menu plus intuitive)
  • la clarté des icônes
  • le temps de réponse de l’application

Compétences acquises

Ce projet m’a permis de consolider plusieurs compétences techniques et transversales.

** Compétences techniques **

  • Développement mobile Flutter / Dart
  • Gestion de données et authentification avec Firebase
  • Conception et modélisation de bases de données NoSQL
  • Architecture client-serveur et logique backend
  • Gestion de versions avec Git / GitLab
  • Collaboration et intégration continue (CI/CD)

** Compétences humaines et méthodologiques **

  • Travail en équipe et répartition des tâches
  • Communication et coordination inter-équipes (Frontend / Backend)
  • Rédaction de documentation technique et fonctionnelle
  • Présentation et valorisation d’un projet académique
  • Capacité à identifier et à s’adapter à un concurrent fort (WhatsApp), et à en tirer des enseignements en termes d’UX et de positionnement produit

Conclusion

Atclub a été un projet complet, mêlant conception, développement, design et test utilisateur.
Même s’il n’a pas été déployé au sein de l’école, il a représenté une expérience formatrice et concrète de gestion de projet numérique.
J’en retire une meilleure compréhension des enjeux techniques, UX et stratégiques liés au développement d’applications collaboratives, ainsi que la motivation de continuer à créer des solutions innovantes et utiles.


Documents complémentaires