WatchOurMovie est une application web qui propose aux utilisateurs des recommandations de films personnalisées en fonction de leurs préférences et de leur historique de visionnage.
- API : FastAPI
- Moteur de Recommandation : Python
- Frontend : Angular
- Caching : module Python cachetools
- Fournisseur d'Identité : Python (JWT)
- Gestion des Utilisateurs : Python
- Base de Données : MySQL
- Recommandations Personnalisées : En utilisant un moteur de recommandation simplifié, WatchOurMovie suggère des films adaptés aux goûts de chaque utilisateur. (Le système recense tous les films présents sur le profil de l'utilisateur et récupère les 3 genres les plus représentés. On cherche ensuite sur TMDB 10 films pour chaque genre que l'utilisateur n'a jamais vu et on lui renvoie le tout en mélangeant le résultat)
- Authentification et Autorisation des Utilisateurs : L'authentification sécurisée des utilisateurs est gérée via Python avec gestion interne des JWT.
- Caching Efficace : Les requêtes sont mises en cache à l'aide de cachetools pour améliorer les performances et réduire les appels d'API redondants.
- Gestion des Utilisateurs : Les profils et préférences des utilisateurs sont gérés en interne.
Avant de lancer l'application, assurez-vous d'avoir installé Docker et Docker Compose sur votre système.
Il vous faut aussi un access token
pour l'API de TMDB à mettre dans le fichier API/.env
dans la variable TMDB_ACCESS_TOKEN
.
Lien vers api TMDB pour générer un token access : lien_doc_TMDB
git clone https://github.com/Tarchaud/Projet_WatchOurMovie.git
cd Projet_WatchOurMovie/
docker-compose up --build
Ctrl+C ou
docker-compose down
docker-compose down --rmi all -v
Après l'application lancer, il est possible d'accéder à la documentation de l'API via un des liens suivants :