Retour aux outils
Photos / MédiasIntermédiaireOpen sourceAuto-hébergeable

AniBridge

Pont d'intégration entre AniList et les serveurs média (Jellyfin/Plex/Emby) pour synchroniser watchl

MAJ 2026-06-14
AniBridge
Site officiel Code source★ 0

AniBridge résout un problème spécifique des serveurs média généralistes ([[app-jellyfin]], [[app-plex]], [[app-emby]]) : leur gestion de l'anime est souvent médiocre, avec des métadonnées prises à TVDB qui ne reflètent pas l'ordre de visionnage correct (saisons numbered différemmment de l'ordre de s

Description

AniBridge résout un problème spécifique des serveurs média généralistes ([[app-jellyfin]], [[app-plex]], [[app-emby]]) : leur gestion de l'anime est souvent médiocre, avec des métadonnées prises à TVDB qui ne reflètent pas l'ordre de visionnage correct (saisons numbered différemmment de l'ordre de sortie). AniList, en revanche, est la référence communautaire avec numérotation officielle et watchlist persistente.

AniBridge agit comme un adaptateur : il lit la watchlist AniList de l'utilisateur, cherche les fichiers locaux sur le serveur média, marque comme « vu » les épisodes correspondants après lecture, et propage les notes dans les deux sens. Le résultat : un anime commencé sur AniList mobile est automatiquement marqué comme vu sur le serveur domestique.

Points forts : UI web claire, mapping intelligent par AniList ID (pas par titre), mode multi-utilisateurs. Limites : ne gère pas l'auto-téléchargement (à coupler avec [[app-sonarr]] ou [[app-bazarr]]), et nécessite un token OAuth AniList.

Installation

Via Docker (recommandé)

# docker-compose.yml
version: "3.8"

services:
  anibridge:
    image: ghcr.io/anibridgeproject/anibridge:latest
    container_name: anibridge
    restart: unless-stopped
    ports:
      - "8765:8765"
    environment:
      - JELLYFIN_URL=http://jellyfin.local:8096
      - JELLYFIN_TOKEN=***      - ANILIST_CLIENT_ID=***      - ANILIST_CLIENT_SECRET=***      - TZ=Europe/Paris
    volumes:
      - ./config:/app/config

Installation manuelle

git clone https://github.com/AniBridgeProject/AniBridge
cd AniBridge
npm install
npm run build
npm start

Configuration

  • OAuth AniList : créer une app sur https://anilist.co/settings/developer, récupérer client ID/secret.
  • Connexion serveur média : URL + token API pour Jellyfin (Plex/Emby partiellement supportés).
  • Mapping des bibliothèques : déclarer quels dossiers correspondent à de l'anime.
  • Sync interval : par défaut 15 min, configurable.
  • Webhook optionnel : push instantané après lecture (Jellyfin POST /webhook).

Alternatives

  • Hama agent (Jellyfin) — Plugin natif Jellyfin pour métadonnées anime/AniDB, sans sync watchlist.
  • AniSync — Script Python, plus ancien et moins maintenu.
  • MAL (MyAnimeList) sync — Similaire mais basé sur MAL, pas AniList.
  • Shoko — Serveur de métadonnées anime, plus complet mais plus lourd.

Sécurité

  • Les tokens AniList et Jellyfin sont des secrets : variables d'environnement, pas de commit Git.
  • Placer l'UI derrière un reverse proxy authentifié ([[app-traefik]] + [[app-authentik]]).
  • Logs : surveiller les erreurs de mapping pour détecter un éventuel compromis de token.
  • Sauvegarder la config anibridge qui contient l'identifiant utilisateur mappé.

Ressources

  • Repository : https://github.com/AniBridgeProject/AniBridge
  • Documentation : https://docs.anibridge.app/
  • API AniList : https://docs.anilist.co/
  • Shoko (référence anime) : https://github.com/shokoanime