--- title: Yamtrack created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, tracking, media-tracker, python, django] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=Media+Tracker, https://github.com/FuzzyGrim/Yamtrack] --- # 🎬 Yamtrack > Suivi multi-média unifié (films, séries, animés, mangas, jeux vidéo) inspiré de Trakt, mais auto-hébergé et simple à déployer. | Métadonnée | Valeur | | :--- | :--- | | **Site web** | [yamtrack.app](https://github.com/FuzzyGrim/Yamtrack) | | **GitHub** | [FuzzyGrim/Yamtrack](https://github.com/FuzzyGrim/Yamtrack) | | **License** | AGPL-3.0 | | **Langage principal** | Python (Django) | | **Étoiles GitHub** | 194 ⭐ | | **Dernière MAJ** | 2026-04-18 | | **Catégorie** | [[cat-tracking]] | ## Description **Yamtrack** est un **tracker média auto-hébergé** construit en **Django** qui permet de centraliser sa consommation culturelle : films, séries TV, animés, mangas et jeux vidéo. Il s'inspire directement de Trakt.tv (et se présente comme un concurrent self-hosted), mais avec une approche plus minimaliste et une API simple, pour qui veut garder le contrôle de ses données. L'application s'appuie sur les **métadonnées de TMDb, MAL, IGDB et OpenLibrary** pour enrichir les entrées, gère la **synchronisation multi-appareils** (web, mobile via PWA), l'**historique de visionnage**, les **listes personnalisées**, et propose des **statistiques** de consommation. C'est un excellent compromis entre la simplicité de [[app-ryot]] et la complétude de Trakt. L'interface est disponible en anglais (pas encore de traduction française complète), mais reste claire et rapide. Le projet est jeune mais actif, et constitue une **excellente porte d'entrée** pour qui veut quitter les services cloud tout en gardant un suivi fin de ses marathons séries. ## Installation ### Via Docker (recommandé) ```yaml version: "3.8" services: yamtrack: image: fuzzygrim/yamtrack:latest container_name: yamtrack restart: unless-stopped ports: - "8080:8000" environment: - SECRET_KEY=changez_moi_avec_une_chaine_aleatoire_de_50_chars - DB_TYPE=postgres - DB_NAME=yamtrack - DB_USER=yamtrack - DB_PASSWORD=changez_moi - DB_HOST=db - TMDB_API=*** depends_on: - db volumes: - ./data:/app/data db: image: postgres:16-alpine container_name: yamtrack-db restart: unless-stopped environment: POSTGRES_DB: yamtrack POSTGRES_USER: yamtrack POSTGRES_PASSWORD: changez_moi volumes: - pgdata:/var/lib/postgresql/data volumes: pgdata: ``` ### Installation manuelle 1. Cloner le dépôt : `git clone https://github.com/FuzzyGrim/Yamtrack.git` 2. Créer un environnement virtuel : `python -m venv venv && source venv/bin/activate` 3. Installer : `pip install -r requirements.txt` 4. Copier `.env.example` en `.env` et remplir les clés 5. Migrer : `python manage.py migrate` 6. Lancer : `python manage.py runserver 0.0.0.0:8000` 7. Créer un super-utilisateur : `python manage.py createsuperuser` ## Configuration - Obtenir une clé **TMDb API** (gratuite) sur [themoviedb.org/settings/api](https://www.themoviedb.org/settings/api) - Configurer les **providers externes** dans l'admin (MAL pour mangas/animes, IGDB pour les jeux) - Créer les **premiers utilisateurs** et définir les permissions - Activer la **PWA** pour utiliser Yamtrack sur mobile - Configurer les **listes publiques** et leur mise en cache - Brancher un **reverse proxy HTTPS** (Traefik, Caddy) pour la production - Activer le **import CSV** depuis Trakt, MyAnimeList ou Letterboxd ## Alternatives ### Open source - [[app-ryot]] — tracker média complet, plus de catégories - [[app-kavita]] — lecteur + tracker manga/comics - **Plex** / **Jellyfin** — serveurs média avec suivi de progression - **MediaTracker** — alternative plus ancienne (Python) - **Syft** — fork de Yamtrack ### Propriétaires - **Trakt.tv** — référence cloud du genre, apps multi-plateformes - **MyAnimeList** — site communautaire pour mangas/animes - **Letterboxd** — spécifique films, social - **Backloggd** — jeux vidéo + films ## Sécurité - Changer la **SECRET_KEY** Django et la garder en variable d'environnement - Activer **HTTPS obligatoire** derrière Traefik/Caddy - Limiter l'**API** via Django REST Framework throttling - Mettre en place un **reverse proxy** avec auth OIDC si multi-utilisateurs - Sauvegarder la base PostgreSQL et le volume `./data` quotidiennement - Mettre à jour l'image Docker régulièrement (alertes Renovate/Dependabot) - Restreindre l'accès admin à un compte dédié avec 2FA ## Ressources - [GitHub du projet](https://github.com/FuzzyGrim/Yamtrack) - [Wiki et guide](https://github.com/FuzzyGrim/Yamtrack/wiki) - [Issue tracker](https://github.com/FuzzyGrim/Yamtrack/issues) - [Démo en ligne](https://github.com/FuzzyGrim/Yamtrack#demo) (quand disponible) - [Template docker-compose](https://github.com/FuzzyGrim/Yamtrack/blob/main/docker-compose.yml) ## Pages Liées - [[cat-tracking]] - [[recettes-docker-compose]] - [[cat-media-tracking]]