Stage Campus Connecté
Développement d'applications web (MP3000 & MTPP) et mise en place d'une infrastructure serveur pour la Mairie de Saint-Gaudens.
1. Immersion au Campus
Intégration au sein de l'équipe du Campus Connecté de Saint-Gaudens. L'objectif initial était de migrer le site existant et de développer des outils internes pour la gestion des étudiants. Nous avons commencé par une phase de découverte des lieux et des besoins avec l'équipe.
2. MP3000 : Conception & Maquettage
Le projet "Marcel Présence 3000" vise à gérer le pointage des étudiants. Nous avons commencé par des réunions de brainstorming et des croquis sur papier pour définir l'UI/UX avant de passer au code. Organisation du travail en équipe via GitLab.
Méthodologie :
- ✍️ Croquis papier & Maquettes
- 🤝 Répartition des tâches (Trello/Tableau)
- 🛠️ Setup Git & GitLab
3. Infrastructure & Système
Mise en place d'un serveur dédié pour héberger les applications et la base de données. Le défi a été de transformer un PC Windows 7 en serveur Linux Ubuntu fonctionnel avec une stack Docker complète.
Stack Technique Déployée :
- 🐧 OS : Ubuntu Server (Installé via clé bootable)
- 🐳 Conteneurisation : Docker
- 🌐 Web Server : Nginx
- 🐘 Web App : PHP 8 + MariaDB
- 💾 Backup : Récupération des données utilisateurs via Kali Linux (Live USB)
Architecture technique du serveur
4. Développement MP3000
Réalisation de l'application de pointage. Authentification, génération de QR Codes uniques pour chaque étudiant, et gestion des sessions sécurisées.
Authentification
Sécurisation SQL & Sessions PHP.
Dashboard
Navigation centrale avec cartes.
Gestion Étudiant
Liste dynamique, Modals, et Actions.
Générateur QR
Algorithme de génération d'ID unique.
function genererIdQrCode($longueur = 25) {
// Ensemble des caracteres qu'on peut utiliser
$caracteres = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$idQrCode = '';
$maxIndex = strlen($caracteres) - 1;
for ($i = 0; $i < $longueur; $i++) {
// Utilise une fonction cryptographiquement sécurisée
$index = random_int(0, $maxIndex);
$idQrCode .= $caracteres[$index];
}
return $idQrCode;
}
5. Projet MTPP & Déploiement
Lancement du second projet "Massin Tout Petit Plus" (Gestion d'événements). Partage de la base de données avec MP3000.
Défi Final : Le déploiement sur le serveur central a posé un problème technique majeur le dernier jour (accès caméra bloqué sans SSL/HTTPS sur IP locale).
Solution de contournement : Déploiement distribué. Chaque poste du campus fait tourner le site en local (Uwamp) tout en se connectant à la base de données centralisée sur le serveur.
Interface de gestion d'événements MTPP
Documentation & Transmission
Rédaction d'une documentation technique et utilisateur complète pour assurer la pérennité des outils après mon départ. Passation de connaissances à l'équipe encadrante.