Coup de Cœur

Projet 23D (2025/2026)

Ahmed JAZIRI, Ryan OUNI, Anthony NASR, Ousman JAWNEH, Hugo VIEIRA GONCALVES, Tohme TOHME

Slogan :
Planify : Tâches, cours et finances réunis dans un outil unique.

1. Contexte
Planify résout les difficultés à centraliser la gestion du temps et des ressources quotidiennes. Face à l'éparpillement des tâches, des factures et des emplois du temps académiques sur des serveurs distincts, les utilisateurs manquent d'un outil unifié. Planify répond à ce besoin en combinant gestion de tâches, calendrier interactif, suivi budgétaire et synchronisation automatique de calendriers externes via flux iCal.

2. Objectifs
Le projet vise à concevoir une application web moderne et réactive qui :
- Centralise les tâches, cours et finances au sein d'un dashboard fluide.
- Intègre des calendriers externes par flux iCal (ical.js) pour agréger automatiquement les cours.
- Propose un copilote intelligent (Gemini 2.0 Flash) comprenant le langage naturel pour agir sur l'application (ajout, modification, suppression).
- Assure une continuité de service absolue grâce à une architecture « offline-first » qui bascule en mode local lors de pertes de réseau.

3. Démarche
Le développement s'est articulé autour des choix suivants :
- React 19 & TypeScript : Pour une base robuste avec Vite garantissant des builds rapides.
- Supabase & LocalStorage : Supabase gère l'authentification et la synchronisation cloud, secondé par le stockage local comme cache résilient hors-ligne.
- IA avec Gemini 2.0 Flash : Intégration du SDK @google/genai et du Function Calling pour relier les requêtes utilisateur en langage naturel aux actions réelles de l'application (addTask, addBill).
- Interface premium : Design sombre moderne (Dashdark) avec glassmorphisme, visualisations Recharts et notifications d'échéances.

4. Résultats
Le projet a abouti à une application web opérationnelle :
- Dashboard unifié : Regroupement dynamique et instantané des tâches et graphiques financiers.
- Chatbot IA autonome : Un assistant virtuel capable d'analyser le contexte (date, heure, GPS) pour planifier des événements par simple message écrit.
- Résilience réseau : Basculement transparent et instantané entre « Sync Cloud » et « Mode Local » sans interruption utilisateur.
- Agrégation de flux : Synchronisation stable de multiples calendriers iCal distants.

5. Apport pédagogique
Ce projet a permis de développer plusieurs compétences majeures :
- Architectures hybrides : Synchronisation d'état entre cache local et base de données cloud (Supabase).
- Ingénierie de l'IA (AI Engineering) : Implémentation concrète de LLM avec injection de contexte dynamique et Function Calling.
- Traitement de formats standardisés : Manipulation de flux iCal et modélisation de données avec Recharts.
- Design & Responsive UX : Création d'une interface immersive, fluide et adaptée aux usages mobiles.