A self-hosted media server for movies, TV series and music, built for a small circle of family and friends.
- Stars
- 2,546
- Forks
- 82
- Open issues
- 60
- Last commit
- yesterday
What is it?
Kyoo is a self-hosted media server focused on movies, series and anime. It serves as a replacement for media browsers such as Jellyfin or Plex, with a strong emphasis on low maintenance: it does not require a particular folder structure or manual metadata edits, and it aims to scan media correctly even when file names are messy.
The project is split into multiple services that can run separately, and it uses PostgreSQL as its database. It offers dynamic transcoding with adaptive quality switching, video preview thumbnails on the progress bar, intro and credit detection via audio fingerprinting, and subtitle support for PGS, VOBSUB, SSA and ASS formats. An OIDC login option and an official Helm chart for Kubernetes are also provided.
Clients currently include a web app, an Android app and Chromecast support, with Android TV planned. The front end is written in React Native, and the API is documented through Swagger.
Key features
- 01Dynamic transcoding with adaptive quality switching
- 02Works without a required folder structure or manual metadata edits
- 03Video preview thumbnails on the progress bar
- 04Intro and credit detection using audio fingerprinting or chapter titles
- 05PGS, VOBSUB, SSA and ASS subtitle support
- 06OIDC login and an official Helm chart for Kubernetes
Use cases
- Running a personal home media server for movies, series and anime
- Hosting a media library for family or friends with varied file naming
- Deploying a media service on a Kubernetes cluster
- Integrating a self-hosted library with external services through its API
Quick start
- 1
Follow the installation guide in INSTALLING.md
Things to know
- Developed by one person only, so maintenance and feature pace depend on a single maintainer.
- Licensed under GPL-3.0, a copyleft license that requires derivative works to be open source.
- Watch list syncing and offline downloads are not yet reimplemented in v5.
- No Android TV client yet; clients are currently Web, Android and Chromecast.
In collections
Topics
FAQ
- What is Kyoo?
- Self-hosted media server for movies, series and anime, an alternative to Jellyfin and Plex that needs little manual setup. Kyoo is a self-hosted media server focused on movies, series and anime. It serves as a replacement for media browsers such as Jellyfin or Plex, with a strong emphasis on low maintenance: it does not require a particular folder structure or manual metadata edits, and it aims to scan media correctly even when file names are messy.
- Is Kyoo free to use? What license does it have?
- Kyoo is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is Kyoo still maintained?
- Actively maintained. The last commit to Kyoo was on Oct 23, 2026.
- What can I use Kyoo for?
- Running a personal home media server for movies, series and anime Hosting a media library for family or friends with varied file naming Deploying a media service on a Kubernetes cluster Integrating a self-hosted library with external services through its API
- How do I install Kyoo?
- Follow the installation guide in INSTALLING.md
- Where can I get Kyoo?
- The source code and installation instructions are on GitHub: https://github.com/zoriya/Kyoo
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A native desktop GUI for FFmpeg that gives granular control over video, audio, image, subtitle and metadata conversion settings.
A self-hosted media tracker for movies, TV shows, anime, manga, games, books, comics and board games.
Open source, self-hosted music server that streams your own library to any browser or mobile app, compatible with Subsonic clients.
A free, open source statistics app for Jellyfin that tracks sessions, watch history, and per-user and per-library activity.
A library maintenance tool for Plex, Jellyfin and Emby that uses rules to collect unwatched or unrequested media and remove it after a grace period.