# 💬 NexusChat > Application de messagerie instantanĂ©e sĂ©curisĂ©e — Projet de Fin d'Études (TFE) NexusChat est une solution complĂšte de messagerie instantanĂ©e sĂ©curisĂ©e, dĂ©veloppĂ©e comme projet final pour l'obtention du diplĂŽme d'informatique en secondaire. Ce projet englobe le dĂ©veloppement d'une application mobile, d'une API personnalisĂ©e et la gestion d'une infrastructure serveur complĂšte. ##Statut du projet **ArchivĂ©** :Les services backend et noms de domaine (nexuschat.derickexm.be) ne sont plus opĂ©rationnels. Le code est fourni tel quel sous licence Apache 2.0. --- ## đŸ—ïž Architecture SystĂšme & Infrastructure L'ensemble du projet repose sur une architecture robuste et auto-hĂ©bergĂ©e : | Composant | Technologie | |---|---| | Hyperviseur | Proxmox VE | | SystĂšme d'exploitation serveur | Linux (Debian/Ubuntu) | | Backend API | Python (Flask / FastAPI) | | Base de donnĂ©es | MariaDB | --- ## 🚀 FonctionnalitĂ©s ClĂ©s ### 🔐 SĂ©curitĂ© & ConfidentialitĂ© - **Chiffrement de bout en bout** — Les messages sont chiffrĂ©s via l'API avant stockage en base de donnĂ©es, avec gestion isolĂ©e des clĂ©s de dĂ©chiffrement. - **Authentification sĂ©curisĂ©e** — Alertes e-mail automatiques lors de tentatives de connexion. - **VĂ©rification de compte** — Validation par e-mail pour Ă©viter les faux comptes. ### 💬 Messagerie AvancĂ©e - **MultimĂ©dia** — Support des messages textuels, intĂ©gration de GIFs via Giphy et partage de fichiers joints par URL. - **Gestion Sociale** — Recherche d'utilisateurs et gestion complĂšte des demandes d'amis (accepter / refuser / supprimer). - **Notifications** — Flux centralisĂ© pour ne manquer aucune interaction. --- ## đŸ› ïž Stack Technique | Couche | Technologie | |---|---| | Frontend mobile | Flutter (Dart) — thĂšmes clair/sombre | | Backend | Python — API REST | | Base de donnĂ©es | MariaDB | | Infrastructure | Proxmox VE (Virtualisation) | --- ## 📂 Organisation du Code Frontend ``` lib/ ├── main.dart # Point d'entrĂ©e de l'app et initialisation des services ├── login.dart # Portail de connexion sĂ©curisĂ© ├── inscription.dart # Portail d'inscription sĂ©curisĂ© ├── listechat.dart # Vue d'ensemble des conversations actives ├── chat.dart # Interface de discussion, polling des messages et chiffrement ├── contacts.dart # Recherche d'utilisateurs et gestion des contacts ├── notifications.dart # Gestion des notifications ├── profil.dart # ParamĂštres utilisateur, changement de mot de passe, suppression de compte └── settings.dart # ParamĂštres de l'application ``` ## 🎓 Contexte du TFE Ce projet est l'aboutissement d'une formation en informatique. Il dĂ©montre la capacitĂ© Ă  concevoir une solution logicielle **Full Stack** complĂšte : - ⚙ Configuration de l'hyperviseur **Proxmox VE** - 🐍 DĂ©veloppement d'**API sĂ©curisĂ©es en Python** - đŸ—„ïž Gestion de **bases de donnĂ©es MariaDB** - đŸ“± Publication d'une **interface mobile Flutter** --- **DĂ©veloppĂ© par Maxime Derick** — DiplĂŽme d'informatique · 2025