Case Study

Gestionnaire de base de données — Netflix

Application Angular/Flask pour manipuler une base de données de séries et films.

AngularFlaskPostgreSQL

01 — Le contexte

Ce projet universitaire (2025) a été conçu comme un terrain d’expérimentation intensif pour consolider nos compétences fraîchement acquises sur la stack Angular et Flask.

Le sujet d’étude choisi était l’univers Netflix. L’objectif n’était pas de recréer le service de streaming vidéo, mais de construire une interface d’administration métier (Back-Office) capable de manipuler une architecture de données relationnelles lourde (séries, épisodes, acteurs, catégories) de manière robuste.

Illustration du projet
Accueil du gestionnaire de base de données

02 — Manipulation des données

L’interface centrale permet à l’administrateur de naviguer dans l’immense base de données via un système de tableaux complexes.

Nous y avons implémenté de nombreuses fonctionnalités essentielles côté client et côté serveur :

  • Un système de recherche, filtrage multicritères, et tri dynamique.
  • Une pagination optimisée pour ne pas surcharger la mémoire du navigateur lors de l’affichage de milliers de lignes.
  • L’ajout, l’édition et la suppression avec des validations strictes et une gestion fine des retours d’erreurs (formulaires Angular connectés aux codes HTTP Flask).
Illustration du projet
Tableau de bord dynamique pour explorer, filtrer et paginer les données

03 — Intégrité et Analytics

Au-delà du simple “CRUD” (Créer, Lire, Mettre à jour, Supprimer), le projet requérait une gestion minutieuse des relations entre les tables PostgreSQL.

L’une des difficultés principales a été d’assurer l’intégrité référentielle (par exemple, gérer proprement la suppression en cascade d’une série sans laisser d’épisodes orphelins). L’application offre également une vue d’analyse de données (Data Analytics) permettant de visualiser graphiquement la répartition des contenus.

Illustration du projet
Visualisation des statistiques de la plateforme

04 — Architecture technique & Logs

L’import de données dynamiques Une des fonctionnalités critiques du système est la capacité d’importer une base de données .sql brute et de la charger à la volée dans l’application via l’interface web.

Comme le montre cette capture de terminal, l’équipe (6 développeurs) a dû mettre en place une traçabilité rigoureuse (logs SQL) côté Backend (SQLAlchemy) pour surveiller le comportement des requêtes lors des gros imports et des traitements en cascade.

Illustration du projet
Console de logs du backend (Flask/PostgreSQL) en plein traitement