Aller au contenu
  • Accueil
  • Projets
  • Expériences
  • Parcours
  • Compétences
  • Contact

Timéo Danois — Développeur full-stack & DevOps

  • Mentions légales
  • Confidentialité
  • Contact
← Tous les projets

TardyGrade

Création d'un réseau social

  • Symfony
  • PHP
  • HTML
  • CSS
  • C#
  • .NET
  • WPF
Logo du projet TardyGrade

Le but du projet était de développer en binôme un réseau social de partage de raisons de retard entre utilisateurs, puis de le déployer sur les serveurs de l'école. Que ce soit pour un retard à l'école ou à un rendez-vous, les utilisateurs partagent des excuses originales, drôles ou surprenantes.

Nous avons aussi développé une application WPF et une Web API qui donnent les statistiques du réseau pour une période donnée (nombre d'utilisateurs, de posts, etc.). Nous utilisions Azure DevOps pour organiser nos tâches et partager le code.

Création du réseau social

Après avoir modélisé notre base de données, nous avons développé le site avec Symfony. Les utilisateurs peuvent créer un compte, le modifier, s'identifier, s'abonner à des établissements ou à d'autres utilisateurs. Ils publient des posts qui peuvent être likés, commentés et « super likés » (un super like par semaine et par utilisateur).

Page d'accueil du réseau social TardyGrade (ouvrir l’image en grand dans un nouvel onglet)
Page d'accueil
Page de profil d'un utilisateur (ouvrir l’image en grand dans un nouvel onglet)
Profil d'un utilisateur
Liste des abonnements d'un compte (ouvrir l’image en grand dans un nouvel onglet)
Abonnements d'un compte
Page d'administration du réseau social (ouvrir l’image en grand dans un nouvel onglet)
Page administrateur

Une application pour suivre les statistiques du réseau

Nous avons développé une API Symfony qui expose les statistiques (nombre de comptes, de posts, etc.) pour une période donnée. Nous avons aussi créé une API C# / .NET en architecture en couches, qui récupère et stocke ces statistiques dans une base de données. Enfin, une application WPF appelle l'API C# et affiche les graphiques de toutes ces statistiques entre deux dates.

Accueil de l'application WPF de statistiques (ouvrir l’image en grand dans un nouvel onglet)
Accueil de l'application WPF
Graphique d'une statistique dans l'application WPF (ouvrir l’image en grand dans un nouvel onglet)
Affichage d'une statistique
Documentation de l'API Symfony (ouvrir l’image en grand dans un nouvel onglet)
API Symfony
Documentation de l'API C# (ouvrir l’image en grand dans un nouvel onglet)
API C#

Schéma de fonctionnement

Quand on crée une nouvelle période, la requête traverse plusieurs couches jusqu'à la couche métier (BLL). On vérifie dans l'historique si la période existe : si oui, on la renvoie, sinon on interroge l'API Symfony, on enregistre les données puis on les renvoie.

Schéma de l'architecture : application WPF, API C# en couches, base de statistiques et API Symfony (ouvrir l’image en grand dans un nouvel onglet)
Architecture des API

La finalité

J'ai déployé une version de production sur les serveurs de l'école, sur des VM Proxmox mises à notre disposition. J'ai beaucoup appris sur Symfony et la création d'API, et je me suis perfectionné dans l'organisation et le travail en équipe.

Projet précédentDragoniumProjet suivantJeu mobile