agendDAY est un projet personnel lancé durant mon Bac, sans aucun encadrement ni cahier des charges.
L'idée de départ était simple : avoir un outil en ligne pour organiser ses journées, que j'ai choisi
de développer moi-même plutôt que d'utiliser une solution existante. C'est ce projet qui m'a
accompagné tout au long de mon apprentissage, d'abord en Bac puis en BTS SIO, en l'enrichissant de
nouvelles fonctionnalités à mesure que mes compétences progressaient.
Le projet a été réalisé entièrement seul, hébergé sur OVH avec un serveur Apache et une base MySQL,
et développé sans framework pour maîtriser les fondamentaux du web.
Stack technique
HTML5CSS3JavaScriptPHPMySQLOVH / Apache
2. Objectifs
L'objectif central était de créer une application web fonctionnelle et accessible en ligne,
permettant à un utilisateur de gérer son agenda de façon autonome. Concrètement, cela impliquait
d'afficher un calendrier mensuel navigable, de permettre l'ajout et la suppression d'événements
persistants, et de proposer une interface claire, responsive et agréable à utiliser.
Au fil des versions, l'ambition a grandi : ajout d'un système d'inscription et de connexion pour
isoler les données de chaque utilisateur, intégration d'un thème clair/sombre, et fluidification
des interactions sans rechargement de page grâce à JavaScript.
Landing page — présentation des fonctionnalités, témoignages et call-to-action
3. Travail réalisé
Page d'accueil & landing
Conception d'une landing page complète présentant l'application : hero avec aperçu du calendrier,
section fonctionnalités, témoignages utilisateurs, section à propos et call-to-action. Interface
soignée avec thème clair par défaut et bascule vers le mode sombre.
Hero section — titre, description et aperçu interactif du calendrier
Calendrier mensuel
Construction du calendrier mensuel en JavaScript : génération dynamique de la grille, calcul
des jours et navigation entre les mois. Le jour sélectionné est mis en évidence et les événements
enregistrés apparaissent sous forme de points indicateurs sur les cases concernées. Le panneau
latéral affiche le détail des événements du jour cliqué.
Vue calendrier — navigation mensuelle, sélection de jour et panneau latéral des événements
Gestion des événements
Système complet d'ajout, modification et suppression d'événements via des modales dédiées.
Chaque événement possède un titre, une heure de rappel et une description optionnelle.
Les données sont persistées en base MySQL et associées au compte de l'utilisateur connecté.
Modale "Ajouter un événement" — titre, heure de rappel et descriptionModale "Modifier l'événement" — édition ou suppression d'un événement existant
Authentification & versions suivantes (BTS)
Ajout du système d'inscription et de connexion pour personnaliser l'agenda par utilisateur.
Intégration de rappels par mail pour notifier l'utilisateur de ses événements à venir.
Développement du thème clair/sombre géré côté JavaScript et mémorisé en localStorage.
Amélioration progressive de l'interface et de la gestion des événements.
4. Outils et technologies utilisés
Langages et rôles
PHPLogique serveur, authentification, gestion des événements
MySQLStockage des événements et des comptes utilisateurs
JavaScriptGénération du calendrier, modales, thème clair/sombre
CSS3Mise en page responsive, variables de thème
Environnement
VS CodeXAMPPphpMyAdminGit & GitHubOVH
5. Compétences mobilisées
C1 – Gérer le patrimoine informatique
→ Versionnement du code source avec Git et sauvegarde sur GitHub pour
assurer la traçabilité et la preservation du projet à chaque évolution
C3 – Développer la présence en ligne
→ Mise en ligne de l'application sur OVH avec nom de domaine personnel,
accessible et utilisable publiquement par tout internaute inscrit
C4 – Travailler en mode projet
→ Pilotage entièrement autonome sur plusieurs années : définition des
priorités, développement par versions successives, suivi de l'avancement via Git
C5 – Mettre à disposition un service informatique
→ Tests manuels avant chaque déploiement, mise en production sur serveur
Apache OVH, maintenance corrective entre les versions
C6 – Organiser son développement professionnel
→ Auto-formation continue tout au long du projet, veille via la
documentation officielle, intégration au portfolio pour valoriser les compétences acquises
Compétences E5 mobilisées
C1Patrimoine informatique
C3Présence en ligne
C4Mode projet
C5Mise à disposition du service
C6Développement professionnel
6. Résultats obtenus
L'application est complète et pleinement fonctionnelle : calendrier mensuel navigable, gestion des
événements par utilisateur, système d'inscription et de connexion, thème clair/sombre, interface
responsive. Elle est accessible en ligne et le code source est publié sur GitHub.
État du projet
En ligne ✓Authentification ✓Responsive ✓GitHub public ✓
Difficultés rencontrées
La principale difficulté a été la lenteur des débuts. Apprendre en autodidacte, sans cours ni
encadrement, signifie que chaque concept doit être cherché, compris et expérimenté seul avant
de pouvoir avancer. Ce qui aurait pris une heure avec un formateur pouvait prendre plusieurs
jours : trouver la bonne documentation, comprendre les exemples, les adapter à mon propre projet,
déboguer sans savoir où chercher. Le projet avançait, mais lentement.
Solution apportée
Accepter ce rythme et décomposer chaque problème en petites étapes testables. Plutôt que de
vouloir tout faire fonctionner d'un coup, j'avançais fonctionnalité par fonctionnalité, en
validant chaque étape avant de passer à la suivante.
Ce que j'ai appris
Cette contrainte s'est finalement révélée être un atout : apprendre sans filet oblige à vraiment
comprendre ce qu'on fait. agendDAY reflète directement l'évolution de mes compétences depuis
le Bac jusqu'au BTS, et m'a appris autant sur l'autonomie et la persévérance que sur le
développement web lui-même.