Frenchio est un addon Stremio puissant qui permet de rechercher et streamer du contenu depuis plusieurs trackers privés/semi-privés français avec support de débridage (AllDebrid, TorBox) et streaming direct via qBittorrent.
Suite à la fermeture de YGG aux services de debrid, cet addon permet de continuer à profiter de contenu français de qualité en connectant vos trackers privés préférés directement à Stremio.
- 🔍 Recherche multi-trackers : UNIT3D, Sharewood, YGGTorrent
- ⚡ Débridage multi-services : AllDebrid, TorBox - Streaming instantané des torrents cachés
- 📥 qBittorrent Support : Streaming direct pour les torrents non-cachés
- 🎯 Sélection intelligente : Détection automatique des épisodes dans les packs de saisons
- 🌐 Recherche parallèle : Requêtes simultanées pour des résultats ultra-rapides
- 🧹 Auto-cleanup : Nettoyage automatique des magnets
- 🎨 Interface moderne : Page de configuration intuitive
- 🐳 Docker Ready : Déploiement en un clic
- TMDB API Key (gratuit)
- Au moins un tracker parmi :
- Trackers UNIT3D (avec API Token)
- Sharewood (Passkey)
- YGGTorrent (Passkey via YGGAPI)
Choisissez au moins une option :
- AllDebrid : Clé API - Streaming instantané des torrents cachés
- TorBox : Clé API - Alternative à AllDebrid avec cache
- qBittorrent : Instance avec WebUI activée - Streaming de tous les torrents
# Lancement avec Docker Compose
docker-compose up -d
# Vérifier les logs
docker logs frenchio-addon -fNote : Les images sont disponibles pour amd64 et arm64 (Raspberry Pi, Apple Silicon)
L'addon sera accessible sur http://localhost:7777
⚠️ IMPORTANT : Si vous hébergez l'addon sur un serveur distant (pas en localhost), vous DEVEZ utiliser HTTPS. Stremio refuse les addons HTTP non-localhost pour des raisons de sécurité. Utilisez un reverse proxy (Nginx, Caddy) avec un certificat SSL (Let's Encrypt).
# Clone le repository
git clone https://github.com/aymene69/frenchio.git
cd frenchio
# Crée un environnement virtuel
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Installe les dépendances
pip install -r requirements.txt
# Lance l'addon
python main.pyOuvrez votre navigateur sur : http://localhost:7777/configure
⚠️ Si vous hébergez sur un serveur distant, utilisezhttps://votre-domaine.com/configure(HTTPS obligatoire)
- TMDB API Key : Votre clé API v3 de TheMovieDB
- AllDebrid API Key : Votre clé API pour le débridage instantané - Obtenir
- TorBox API Key : Alternative à AllDebrid - Obtenir
Ajoutez un ou plusieurs trackers compatibles UNIT3D :
- URL :
https://votre-tracker.com(sans slash final) - API Token : Token d'API personnel depuis les paramètres du tracker
Note : UNIT3D est une plateforme de tracker BitTorrent. De nombreux trackers français utilisent ce logiciel. L'addon est compatible avec tous les trackers basés sur UNIT3D.
- Passkey : Votre passkey Sharewood (32 caractères)
- Passkey : Votre passkey YGG (32 caractères)
Note : Même si YGG a fermé l'accès aux services de debrid, vous pouvez toujours utiliser YGG avec qBittorrent pour le streaming direct.
Configuration pour le streaming direct :
- Host :
http://votre-ip:8080(WebUI qBittorrent) - Username : Login WebUI
- Password : Mot de passe WebUI
- Public URL :
http://votre-ip:8000(pour servir les fichiers)
- Cliquez sur "Générer le lien d'installation Stremio"
- Copiez le lien généré
- Ouvrez-le dans votre navigateur
- Stremio détectera automatiquement l'addon
- Ouvrez Stremio
- Recherchez un film ou une série
- Cliquez sur "Play"
- Sélectionnez une source Frenchio
Stremio
↓
Frenchio (recherche parallèle)
├─→ Trackers UNIT3D
├─→ Sharewood
└─→ YGGTorrent
↓
Résultats filtrés
↓
├─→ AllDebrid/TorBox (si caché) → Stream instantané ⚡
└─→ qBittorrent (sinon) → Stream pendant le DL 📥
Processus détaillé :
- Conversion IMDB → TMDB : Récupération des métadonnées
- Recherche parallèle : Tous les trackers interrogés simultanément
- Filtrage intelligent :
- Vérification de la pertinence (TMDB/IMDB ID)
- Pour les séries : détection du S##E## dans le nom
- Pour les packs : exploration des fichiers pour trouver le bon épisode
- Débridage/Streaming :
- AllDebrid/TorBox : Si le torrent est caché → streaming instantané
- qBittorrent : Sinon → ajout avec téléchargement séquentiel
- Nettoyage : Suppression automatique des magnets temporaires sur AllDebrid
Si vous hébergez Frenchio sur un serveur distant (VPS, NAS, etc.), vous devez utiliser HTTPS.
Un exemple docker-compose.traefik.example.yml est fourni :
# 1. Copiez et personnalisez
cp docker-compose.traefik.example.yml docker-compose.yml
# Éditez et remplacez "frenchio.aymene.tech" par votre domaine
# 2. Lancez
docker-compose up -dNote : Nécessite un réseau
traefik_networkexistant et Traefik déjà configuré avec Let's Encrypt.
Un fichier docker-compose.https.yml est fourni pour un déploiement HTTPS facile :
# 1. Copiez et configurez le Caddyfile
cp Caddyfile.example Caddyfile
# Éditez Caddyfile et remplacez "frenchio.votredomaine.com" par votre domaine
# 2. Lancez avec Caddy (gère automatiquement le SSL)
docker-compose -f docker-compose.https.yml up -dCaddy va automatiquement :
- ✅ Obtenir un certificat SSL gratuit (Let's Encrypt)
- ✅ Le renouveler automatiquement
- ✅ Gérer le reverse proxy
server {
listen 443 ssl http2;
server_name frenchio.votredomaine.com;
ssl_certificate /etc/letsencrypt/live/votredomaine.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/votredomaine.com/privkey.pem;
location / {
proxy_pass http://localhost:7777;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}frenchio.votredomaine.com {
reverse_proxy localhost:7777
}
Caddy gère automatiquement les certificats SSL avec Let's Encrypt !
# Avec Certbot (pour Nginx/Apache)
sudo certbot --nginx -d frenchio.votredomaine.com
# Avec Caddy
# Automatique, rien à faire !Si votre réseau utilise un proxy, Frenchio le supporte nativement :
# Définir les variables d'environnement proxy
docker run -d \
--name frenchio \
-p 7777:7777 \
-e HTTP_PROXY=http://proxy.example.com:8080 \
-e HTTPS_PROXY=http://proxy.example.com:8080 \
-e NO_PROXY=localhost,127.0.0.1 \
ghcr.io/aymene69/frenchio:latestDécommentez les lignes proxy dans docker-compose.yml :
environment:
- PORT=7777
- HTTP_PROXY=http://proxy.example.com:8080
- HTTPS_PROXY=http://proxy.example.com:8080
- NO_PROXY=localhost,127.0.0.1# Définir les variables avant de lancer
export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=http://proxy.example.com:8080
export NO_PROXY=localhost,127.0.0.1
python main.pyNote : Frenchio utilise les variables standard
HTTP_PROXY,HTTPS_PROXYetNO_PROXY(majuscules ou minuscules).
Frenchio supporte plusieurs variables d'environnement pour personnaliser son comportement :
Active ou désactive le support de qBittorrent dans l'addon.
# Valeur par défaut: true
QBITTORRENT_ENABLE=true # Active qBittorrent
QBITTORRENT_ENABLE=false # Désactive qBittorrentUtilité : Utile pour les hébergeurs qui proposent uniquement le débridage (AllDebrid/TorBox) sans qBittorrent.
Ajoute un suffixe personnalisé au nom de l'addon dans Stremio.
# Exemple pour ElfHosted
MANIFEST_TITLE_SUFFIX=| ElfHosted
# Le nom de l'addon sera: "Frenchio | ElfHosted"Utilité : Permet aux hébergeurs de personnaliser le branding de l'addon.
Ajoute un message HTML/markup personnalisé à la description de l'addon.
# Exemple avec HTML
MANIFEST_BLURB=<b>Hébergé par ElfHosted</b> - Support 24/7
# Exemple texte simple
MANIFEST_BLURB=Version communautaire - Merci de votre soutien!Utilité : Permet d'afficher des informations supplémentaires, liens de support, etc.
environment:
- PORT=7777
- QBITTORRENT_ENABLE=false
- MANIFEST_TITLE_SUFFIX=| ElfHosted
- MANIFEST_BLURB=<b>Premium hosting by ElfHosted</b> - <a href="https://elfhosted.com/support">Support</a>Pour un streaming optimal avec qBittorrent :
Options → Web UI → Cocher "Enable Web UI"
- Port : 8080 (ou autre)
- Username : admin
- Password : votre-mot-de-passe
Le dossier de téléchargement doit être accessible via HTTP pour le streaming.
Option A : Nginx
server {
listen 8000;
root /chemin/vers/downloads;
autoindex on;
}Option B : Python (test uniquement)
cd /chemin/vers/downloads
python3 -m http.server 8000- Host :
http://ip-qbittorrent:8080 - Public URL :
http://ip-qbittorrent:8000
Note : La librairie
qbittorrent-apigère automatiquement l'authentification et le CSRF, aucune configuration spéciale nécessaire.
frenchio/
├── main.py # Point d'entrée, routes Stremio
├── services/
│ ├── tmdb.py # Service TMDB (IMDB → TMDB)
│ ├── unit3d.py # Client UNIT3D multi-tracker
│ ├── sharewood.py # Client Sharewood API
│ ├── ygg.py # Client YGGAPI
│ ├── alldebrid.py # Service AllDebrid (debrid)
│ └── qbittorrent.py # Service qBittorrent (streaming)
├── templates/
│ └── configure.html # Page de configuration
├── utils.py # Utilitaires
├── requirements.txt # Dépendances Python
├── Dockerfile # Image Docker
└── docker-compose.yml # Stack Docker
┌─────────────────────────────────────────────┐
│ Stremio (Client) │
│ ✅ Accepte: https:// ou http://localhost │
│ ❌ Refuse: http://distant │
└─────────────────┬───────────────────────────┘
│
┌─────────────┴──────────────┐
│ │
▼ localhost ▼ distant
┌──────────────┐ ┌──────────────┐
│ Frenchio │ │ Reverse Proxy│
│ :7777 (HTTP) │ │ (HTTPS + SSL)│
└──────────────┘ └──────┬───────┘
│
┌──────▼───────┐
│ Frenchio │
│ :7777 (HTTP) │
└──────────────┘
Cause : Stremio refuse les addons HTTP non-localhost
Solution :
- ✅ Si hébergé localement : Utilisez
http://localhost:7777ouhttp://127.0.0.1:7777 - ✅ Si hébergé à distance : HTTPS obligatoire avec un reverse proxy (voir section Hébergement distant)
- Vérifiez que vos clés API sont valides
- Consultez les logs :
docker logs frenchio-addonou terminal - Testez manuellement les API des trackers
- Vérifiez que le WebUI est bien activé
- Testez :
curl http://votre-ip:8080/api/v2/app/version - Vérifiez les identifiants (username/password)
- Vérifiez que votre clé API est valide
- Consultez les logs pour les détails
Les contributions sont les bienvenues ! N'hésitez pas à :
- Fork le projet
- Créer une branche (
git checkout -b feature/nouvelle-fonctionnalite) - Commit vos changements (
git commit -m 'Ajout nouvelle fonctionnalité') - Push vers la branche (
git push origin feature/nouvelle-fonctionnalite) - Ouvrir une Pull Request
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
Cet addon est conçu pour un usage personnel avec vos propres comptes et trackers. Assurez-vous de respecter les conditions d'utilisation de chaque service et les lois en vigueur dans votre pays.
- Stremio pour leur plateforme extensible
- UNIT3D pour leur API tracker
- AllDebrid pour leur service de débridage
- TMDB pour leurs métadonnées
- La communauté des trackers français
Pour toute question ou problème :
- Ouvrez une issue
- Consultez la documentation Stremio
Fait avec ❤️ pour la communauté Stremio francophone