Aller au contenu
Tous les projets

Web · Projet en binôme · INFO910

MovieFinder

Trouver le film parfait pour une soirée entre amis

Capture d'écran de MovieFinder

Croise les watchlists de plusieurs amis, tenues sur un réseau social de cinéphiles, pour faire ressortir les films que tout le monde veut voir.

Le problème

Choisir un film à plusieurs prend souvent plus de temps que de le regarder. Chacun tient sa watchlist sur son réseau social de cinéphiles préféré, mais personne n’a envie de les comparer à la main.

La solution

On saisit les pseudos du groupe, de 2 à 10 personnes. L’application récupère la watchlist et les derniers films vus de chacun, puis classe les films communs par pertinence : un film que tout le monde veut voir et que personne n’a vu passe en tête.

  • Six niveaux de priorité, du film voulu par tous et vu par personne jusqu’au reste
  • Affichage en grille d’affiches ou en tableau
  • Aucun compte et rien n’est conservé : on saisit les pseudos, on obtient la liste
  • Cache de 24 h pour ne pas solliciter le site source à chaque recherche

Architecture

Trois conteneurs : un front React/TypeScript servi par Nginx, une API Node.js/Express qui lit les pages publiques des membres, et MongoDB comme cache. En production, ils tournent derrière le reverse proxy Caddy du serveur, qui gère le HTTPS. Le projet se déploie aussi sur un cluster Kubernetes, l’objet du cours d’origine.

En images

Les films communs, du plus consensuel au moins prioritaire. Chaque carte indique qui l'a dans sa watchlist et qui l'a déjà vu.
Les films communs, du plus consensuel au moins prioritaire. Chaque carte indique qui l'a dans sa watchlist et qui l'a déjà vu.
Chaque pseudo est vérifié dès qu'on quitte le champ.
Chaque pseudo est vérifié dès qu'on quitte le champ.
La vue en tableau, avec le niveau de priorité de chaque film.
La vue en tableau, avec le niveau de priorité de chaque film.