Initial vault setup
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
---
|
||||
title: Kyoo
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, media-streaming, kyoo, video, anime, transcoding]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources:
|
||||
- https://selfh.st/apps/?tag=Media+Streaming
|
||||
- https://github.com/zoriya/kyoo
|
||||
- https://kyoo.zoriya.dev/
|
||||
---
|
||||
|
||||
# 🎬 Kyoo
|
||||
|
||||
> Plateforme de streaming moderne style Netflix/SonyLIV, écrite en Go + React, pensée pour les bibliothèques auto-hébergées avec une UI soignée.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Attribut | Valeur |
|
||||
|----------|--------|
|
||||
| **Nom** | Kyoo |
|
||||
| **Slug** | app-kyoo |
|
||||
| **Description** | Frontend moderne pour bibliothèque vidéo, avec scan automatique, métadonnées TMDB/TVDB/AniDB, transcodage et multi-profils |
|
||||
| **Site officiel** | https://kyoo.zoriya.dev/ |
|
||||
| **Repository** | https://github.com/zoriya/kyoo |
|
||||
| **Stars** | 2 468 ⭐ |
|
||||
| **Licence** | GPL-3.0 |
|
||||
| **Langage principal** | Go, TypeScript |
|
||||
| **Catégorie** | Media Streaming |
|
||||
| **Tags** | [catalogue, media-streaming, kyoo, video, anime, transcoding] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
Kyoo est un projet jeune (mais déjà très mature) qui vise à offrir une expérience de streaming équivalente à Netflix, sans aucune dépendance à un service externe et avec un frontend moderne responsive. Il est conçu comme un meta-frontend : il indexe un dossier de fichiers (films, séries, anime) et s'appuie sur les métadonnées publiques (TMDB, TVDB, AniDB, MAL) pour construire une bibliothèque navigable avec carrousels, recherche fuzzy, fiches détaillées, saisons/épisodes, gestion des versions multiples (multi-audio, multi-subs).
|
||||
|
||||
L'architecture est full microservices dans un seul binaire Go (Kratos) couplé à une SPA React (NextJS). Le transcodage s'appuie sur ffmpeg avec support GPU (NVENC, QSV, VAAPI). Les clients officiels incluent web, Android, iOS, Android TV et iPadOS. Multi-utilisateurs, multi-profils, reprise de lecture, watchlist, follow de séries sont au rendez-vous.
|
||||
|
||||
Points forts : UI vraiment moderne, navigation fluide, gestion native des anime (AniDB), support multi-saisons/OVA/Specials, scan rapide via hash. Limites : projet en cours de finalisation (API et clients mobiles encore en alpha sur certaines plateformes), catalogue de plugins moins riche que Jellyfin, et pas de Live TV/DVR.
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Via Docker (recommandé)
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
kyoo:
|
||||
image: zoriya/kyoo:latest
|
||||
container_name: kyoo
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8000:8000" # Interface web
|
||||
environment:
|
||||
K_DATABASE_URL: postgres://kyoo:ChangeM3_KYOO@db:5432/kyoo
|
||||
K_REDIS_URL: redis://redis:6379
|
||||
K_MEDIA_PATH: /media
|
||||
K_JWT_SECRET: ChangeM3_JWT_SECRET_LONG
|
||||
volumes:
|
||||
- /media:/media:ro
|
||||
depends_on:
|
||||
- db
|
||||
- redis
|
||||
|
||||
db:
|
||||
image: postgres:16
|
||||
container_name: kyoo-db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
POSTGRES_USER: kyoo
|
||||
POSTGRES_PASSWORD: ChangeM3_KYOO
|
||||
POSTGRES_DB: kyoo
|
||||
volumes:
|
||||
- ./db:/var/lib/postgresql/data
|
||||
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
container_name: kyoo-redis
|
||||
restart: unless-stopped
|
||||
```
|
||||
|
||||
### Installation manuelle
|
||||
|
||||
Compilation Go : `go build ./cmd/kyoo`. Frontend : `pnpm install && pnpm build`, servable par nginx/Caddy. PostgreSQL 15+ et Redis 7+ requis.
|
||||
|
||||
## ⚙️ Configuration
|
||||
|
||||
- **Bibliothèques** : pointeur unique `/media` ou plusieurs dossiers déclarés dans l'admin web. Le scan tourne en background.
|
||||
- **Métadonnées** : configurer les providers (TMDB API key, AniDB credentials, MAL token).
|
||||
- **Transcodage** : choisir le profil GPU/CPU, définir les qualités disponibles (240p à 4K HDR).
|
||||
- **Comptes** : admin + utilisateurs, profils multiples, contrôle parental (à venir).
|
||||
- **Scan** : intervalle configurable, mode "watch" (détection automatique de nouveaux fichiers).
|
||||
- **Reverse proxy** : Traefik ou Caddy avec subpath ou sous-domaine dédié.
|
||||
|
||||
## 🔗 Alternatives
|
||||
|
||||
- **Jellyfin** — Plus mature, plus de plugins, plus de clients stables, mais UI plus classique.
|
||||
- **Plex** — Fermé, payant pour certaines fonctions, mais UX très polie.
|
||||
- **Streamyfin** — Frontend moderne pour Jellyfin, pas un backend complet.
|
||||
- **MiniFlix / Overseerr + Jellyfin** — Stack modulaire qui fait une partie des jobs de Kyoo.
|
||||
|
||||
## 🔒 Sécurité
|
||||
|
||||
- Changer la clé JWT (`K_JWT_SECRET`) — c'est elle qui signe les sessions.
|
||||
- Isoler l'accès admin par reverse proxy ([[app-traefik]] + Authelia/Authentik).
|
||||
- Ne pas exposer le dossier média en écriture : `ro` dans la stack Docker.
|
||||
- Activer HTTPS obligatoire (Kyoo ne gère pas le TLS en natif).
|
||||
|
||||
## 📚 Ressources
|
||||
|
||||
- Site officiel : https://kyoo.zoriya.dev/
|
||||
- Repository : https://github.com/zoriya/kyoo
|
||||
- Documentation : https://kyoo.zoriya.dev/docs
|
||||
- Discord communautaire : https://discord.gg/kyoo
|
||||
|
||||
## 🔗 Pages Liées
|
||||
|
||||
- [[cat-media-streaming]] (catégorie parente)
|
||||
- [[app-jellyfin]] — Alternative mature
|
||||
- [[app-tvheadend]] — Complément Live TV
|
||||
- [[app-traefik]] — Reverse proxy HTTPS
|
||||
- [[recettes-docker-compose]] — Templates
|
||||
- [[securisation-home-lab]] — Bonnes pratiques
|
||||
Reference in New Issue
Block a user