À propos du projet

OpenAver est une application de bureau gratuite et open source, axée sur un mode de parcours de collection « parcourir par couvertures, chercher par actrice », avec sortie optionnelle de fichiers NFO et de couvertures pour Jellyfin/Emby/Kodi. Le projet est publié sous licence MIT et met l'accent sur une exécution 100 % locale, sans inscription de compte ni envoi d'informations sur les fichiers ; les requêtes réseau servent uniquement à récupérer des métadonnées publiques. Installation et plateformes Prend en charge Windows 10/11 et macOS (puces Apple M1 et ultérieures). Un script d'installation en une ligne est fourni (curl sur macOS, PowerShell sur Windows) ; il est également possible de télécharger un ZIP ou un fichier d'installation .bat pour Windows depuis les Releases. Après l'installation, tout se fait via l'interface graphique, sans Docker ni ligne de commande. Linux n'a pas de programme d'installation officiel, mais la documentation explique comment le déployer en serveur sur réseau local pour une utilisation via navigateur. Trois pages principales 1. Scanner (analyse) : ajoutez le dossier contenant les vidéos, puis cliquez sur « Générer le site » pour les importer. Si des fichiers NFO et des couvertures existent déjà à côté des vidéos, ils sont lus directement ; le processus d'analyse ne fait que lire, sans écrire. Après l'analyse, les éléments manquant de NFO ou de couverture sont listés et peuvent être complétés depuis Internet en un clic, en ne remplissant que les champs vides sans écraser les données existantes. 2. Showcase (parcours) : présente la collection sous forme de mur de couvertures avec filtres superposables ; les actrices disposent d'un mur distinct avec des fiches détaillées (taille, tour de poitrine, mensurations, âge, historique des alias) et d'un tri par tour de poitrine, âge, taille ou nombre de films. Un système de recommandation de films similaires basé sur des règles (étiquettes, séries, studios, actrices) fonctionne par comparaison locale, hors ligne et en temps réel. 3. Search (recherche) : gère les vidéos nouvellement téléchargées ; glissez-déposez des fichiers ou dossiers, reconnaissance automatique des références, requêtes par lot, téléchargement des couvertures et photos, puis cliquez sur « Organiser » pour renommer, créer des dossiers et écrire les NFO après confirmation. Inclut également une fonction de signets et un rangement programmé optionnel (traitement automatique d'un dossier désigné toutes les 12 heures). Sources de récupération 8 sources intégrées : JavBus, Jav321, JavDB, DMM, D2Pass, HEYZO, FC2, AVSOX, avec interrogation simultanée et comparaison avec la collection existante, marquage des éléments déjà possédés. Deux sites de secours, JavLibrary et FC2-javten, se trouvent derrière la vérification humaine de Cloudflare et ne prennent en charge que les requêtes manuelles par référence exacte sur la version desktop. Les utilisateurs avancés peuvent déployer leur propre instance Metatube et s'y connecter, portant le total des sources à plus de 30 fournisseurs maintenus par la communauté. Intégration avec les lecteurs multimédias Lors du rangement, vous pouvez choisir de générer des noms de fichiers poster, fanart et NFO reconnus par Jellyfin/Emby/Kodi, les vidéos restant à leur emplacement d'origine. Pour les collections sur NAS ou montages cloud que vous ne souhaitez pas modifier, un mode source « lecture seule » est disponible : les fichiers originaux ne sont jamais écrits, les métadonnées et couvertures récupérées sont exportées vers un dossier local désigné, et des fichiers .strm peuvent être générés pour permettre au lecteur de diffuser directement le fichier d'origine ; des règles de substitution de chemins entre machines sont également prises en charge. Autres fonctionnalités - Alias d'actrices et d'étiquettes : possibilité d'ajouter des alias dans l'interface ; lors de la recherche, les synonymes en chinois, japonais et anglais sont automatiquement développés, et les noms de scène et noms de retraite d'une même personne sont fusionnés en une seule fiche. - Traduction par IA : prend en charge Ollama (local, gratuit), Gemini Flash et les points de terminaison compatibles OpenAI, pour traduire les titres japonais dans la langue de l'interface. - Navigation sur appareils mobiles : dans les paramètres, un mode « serveur » peut être activé, permettant aux téléphones et tablettes sur le même Wi-Fi de parcourir la collection via un navigateur ; non exposé par défaut, avec mot de passe optionnel. - Export HTML statique : génère des fichiers HTML autonomes consultables hors ligne. - Quatre langues d'interface commutables en temps réel : chinois traditionnel, chinois simplifié, japonais, anglais. API pour opérations par IA Une API REST locale et un manifeste de capacités sont fournis ; les outils d'IA (tels que Claude Code, Cursor, etc.) peuvent lire la description des points de terminaison via une seule commande curl, puis enchaîner des opérations multi-étapes, par exemple ajouter des actrices en lot à la collection, créer des alias, ajouter des étiquettes en lot ou générer des pages HTML avec couvertures. Les définitions des points de terminaison sont centralisées dans web/routers/capabilities.py. Architecture technique Le backend utilise FastAPI (Python 3.12), le frontend repose sur Jinja2, DaisyUI, Tailwind CSS et Alpine.js, l'empaquetage desktop est assuré par PyWebView, la base de données est SQLite (mode WAL), et les tests sont écrits avec Pytest. La documentation du projet explique comment exécuter le mode développement et le mode desktop à partir du code source, et fournit des scripts d'empaquetage pour Windows et macOS. Confidentialité et sécurité des fichiers Le projet déclare ne jamais envoyer de vidéos ni de listes de collections, et ne comporter ni compte ni télémétrie. La recherche, le parcours et l'analyse sont en lecture seule ; la complétion des données se limite à l'ajout de fichiers NFO et de couvertures à côté des vidéos ; les vidéos ne sont déplacées ou renommées selon les règles que lorsque l'utilisateur clique volontairement sur « Organiser », et aucun fichier n'est supprimé ; un avertissement est affiché si un fichier de même nom existe déjà à l'emplacement cible. Licence et communauté Publié sous licence MIT, avec GitHub Issues et un groupe Telegram comme canaux de signalement et d'échange. Le projet inclut également une clause de non-responsabilité rappelant aux utilisateurs de respecter les conditions de service des sites web, de contrôler raisonnablement la fréquence des requêtes, et de n'utiliser l'outil qu'à des fins d'étude et de recherche personnelles.