diff --git a/README.md b/README.md index d1e8f04..73db2c2 100644 --- a/README.md +++ b/README.md @@ -254,40 +254,102 @@ class MyAnimeDownloader(BaseDownloader): ## 🗺️ Roadmap / Plans Futurs -### Version 2.2 - Améliorations des Métadonnées -- [ ] **Affichage des posters** : Afficher les images de couverture dans les résultats de recherche -- [ ] **Filtrage avancé** : Filtrer par genre, année, studio, statut -- [ ] **Tri des résultats** : Par popularité, date, note -- [ ] **Favoris** : Sauvegarder les animes favoris -- [ ] **Historique** : Voir les animes récemment consultés +### Version 2.2 - Système de Favoris ✅ (Terminé) +- [x] **Favoris** : Sauvegarder les animes favoris avec métadonnées complètes +- [x] **API REST complète** : 6 endpoints pour gérer les favoris +- [x] **Tri et filtrage** : Par titre, rating, année, provider, genre +- [x] **Statistiques** : Distribution par provider et genre +- [x] **Stockage persistant** : Base JSON (favorites.json) -### Version 2.3 - Gestion de Bibliothèque +### Version 2.3 - Base de Données & Authentification +- [ ] **SQLite avec SQLAlchemy** : Persistance complète des données +- [ ] **Système d'authentification local** : + - [ ] Inscription et connexion utilisateur + - [ ] Tokens JWT avec expiration (7 jours) + - [ ] Hachage de mot de passe bcrypt + - [ ] Préférences utilisateur personnalisables +- [ ] **Profils utilisateurs** : + - [ ] Table User : username, email, preferences, admin + - [ ] Historique de téléchargement par utilisateur + - [ ] Historique de visionnage (position, progression) + - [ ] Préférences : langue par défaut, thème, auto-download +- [ ] **Rétrocompatibilité** : Accès anonyme toujours possible + +**Nouveaux endpoints :** +- `POST /api/auth/register` - Inscription +- `POST /api/auth/login` - Connexion (JWT) +- `GET /api/auth/me` - Profil utilisateur +- `PUT /api/auth/me/preferences` - Préférences +- `GET /api/auth/me/download-history` - Historique +- `GET /api/auth/me/watch-history` - Visionnage + +### Version 2.4 - APIs Externes & Recommandations +- [ ] **Intégration Jikan API** (MyAnimeList) : + - [ ] Métadonnées enrichies (poster, notes, genres) + - [ ] Limitation de débit : 3 req/sec +- [ ] **Intégration AniList API** (GraphQL) : + - [ ] Recommandations basées sur l'historique + - [ ] Limitation de débit : 90 req/min +- [ ] **Système de cache** : + - [ ] Cache API dans la base de données + - [ ] TTL configurable (168h par défaut) + - [ ] Mécanisme de fallback (AniList → Jikan) +- [ ] **Enrichissement automatique** : + - [ ] Fusion des données providers + API externes + - [ [ ] Affichage des posters dans les résultats + +**Nouveaux endpoints :** +- `GET /api/anime/metadata?enrich=true` - Métadonnées enrichies +- `GET /api/recommendations` - Suggestions personnalisées + +### Version 2.5 - Webhooks & Automatisation +- [ ] **Support Sonarr Webhook** : + - [ ] `POST /api/webhook/sonarr` - Réception événements + - [ ] Auto-téléchargement des nouveaux épisodes + - [ ] Vérification HMAC SHA256 (optionnel) + - [ ] Gestion des événements : Download, Rename, Delete +- [ ] **Automatisations** : + - [ ] Déclenchement automatique sur nouvel épisode + - [ ] Analyse des infos épisodes depuis Sonarr + - [ ] Mapping automatique vers les providers + +**Nouveaux endpoints :** +- `POST /api/webhook/sonarr` - Webhook principal +- `POST /api/webhook/test/sonarr` - Test de payload + +### Version 2.6 - Gestion de Bibliothèque Avancée - [ ] **Bibliothèque personnelle** : Gérer sa collection d'anime téléchargés -- [ ] **Statistiques** : Temps de visionnage, espace disque utilisé +- [ ] **Statistiques détaillées** : + - [ ] Temps de visionnage total + - [ ] Espace disque utilisé + - [ ] Animes les plus regardés + - [ ] Graphiques de statistiques +- [ ] **Marquage d'épisodes** : + - [ ] Marquer épisodes comme vus/non vus + - [ ] Système de progression automatique + - [ ] Reprendre la lecture là où on s'est arrêté - [ ] **Listes de lecture** : Créer des playlists personnalisées -- [ ] **Marquage** : Marquer les épisodes comme vus/non vus - [ ] **Notes personnelles** : Noter les animes et laisser des commentaires -### Version 2.4 - Qualité et Formats +### Version 2.7 - Qualité et Formats - [ ] **Sélection de qualité** : Choisir entre 1080p, 720p, 480p - [ ] **Conversion automatique** : Convertir en différents formats - [ ] **Compression** : Réduire la taille des fichiers - [ ] **Extraction de sous-titres** : Télécharger les subs automatiquement - [ ] **Multi-audio** : Gérer les versions VF/VOSTFR -### Version 2.5 - Fonctionnalités Sociales -- [ ] **Partage de listes** : Partager ses playlists avec amis -- [ ] **Recommandations** : Suggestions basées sur l'historique -- [ ] **Notes et avis** : Système de commentaires -- [ ] **Intégration Discord/Telegram** : Notifications de nouveaux épisodes +### Version 3.0 - Fonctionnalités Sociales & Mobile +- [ ] **Fonctionnalités sociales** : + - [ ] Partage de listes avec amis + - [ ] Système de commentaires et avis + - [ ] Intégration Discord/Telegram (notifications) +- [ ] **Mobile & PWA** : + - [ ] Application mobile native iOS/Android + - [ ] Progressive Web App pour offline + - [ ] Chromecast/AirPlay support + - [ ] Interface optimisée mobile -### Version 2.6 - Mobile et Applications -- [ ] **Application mobile** : App native iOS/Android -- [ ] **PWA** : Progressive Web App pour offline -- [ ] **Cast** : Chromecast/AirPlay support -- [ ] **Download sur mobile** : Interface optimée mobile - -### Version 3.0 - Fonctionnalités Avancées +### Version 4.0 - Fonctionnalités Avancées - [ ] **Sauvegarde cloud** : Sync avec Google Drive/Dropbox - [ ] **Streaming distant** : Regarder partout - [ ] **Multi-utilisateurs** : Profils et permissions