Search iThub

Search tools, categories and collections. Type at least two characters.

Explore all tools
↑ ↓ to explore resultsEnter to open · Esc to close

Ryot

Self-hosted tracker for movies, shows, books, games, workouts and body measurements, with importers and integrations

Visit website Save

GPL-3.0 self-hosted tracker for media and fitness: movies, TV, books, games, workouts and measurements. Runs from a Docker image with PostgreSQL, imports from Trakt and Goodreads and syncs with Jellyfin and Plex.

Pricing
Freemium
Deployment
Self-hosted
Platforms
Web
3,657stars145forks
0views
Updated

What is Ryot?

Ryot, short for Roll Your Own Tracker and pronounced "riot", is a self-hosted tracker for media consumption and fitness. One account holds the movies, shows, anime, books, audiobooks, podcasts, music, video games and visual novels you follow, alongside workouts, exercises and body measurements. The source is on GitHub at IgnisDa/ryot under GPL-3.0, with documentation at docs.ryot.io and a product site at ryot.io. The first version dates from April 2023, according to the maintainer's own blog.

Ryot is distributed as Docker images on Docker Hub and the GitHub Container Registry, with Helm chart support added in the 10.5 line. The documented installation is a Compose file with a PostgreSQL 15 or newer database (the examples use PostgreSQL 18) and the Ryot container, which listens on port 8000. Two environment variables are required: a database URL and a long random admin access token. Metadata providers such as TMDb and IGDB need their own API tokens, which the configuration page explains. A hosted cloud version is run by the project at ryot.io.

The current release is v10.5.0, published August 22, 2026, and its notes also cover patch releases 10.5.1 to 10.5.6. They add IMDb CSV and Trakt zip importing, resolve Jellyfin episode IDs to parent shows, fix Plex scrobble handling and fix several authorization problems, including cross-user access to collections and access links. Version 10.0.0 in December 2025 was a major release with breaking changes and a migration guide from v9. The maintainer has also written about a larger rewrite on a separate branch, so expect the v10 line to continue under patch releases while that work proceeds.

The free community edition is the open-source application. Ryot Pro is an optional paid layer enabled with a license key in the SERVER_PRO_KEY environment variable, and an expired or invalid key reverts the server to the community version. Ryot is a personal tracker: it is not a media server, a downloader or a multi-tenant social network.

Inside the application

Ryot screenshots

Explore the interface. Open a screenshot to view it at full size.

Ryot on a phone, laptop and tablet: a measurements graph, a grid of tracked movies and a completed workout with exercises and sets
Ryot screenshot 1

The official product image showing the dark theme on three devices: the measurements graph, the My Movies grid of tracked films and a logged workout.

Ryot Genres page in dark theme with a sidebar for media and fitness and a grid of genre tiles built from book and movie covers
Genres and media sidebar

The Genres page from the official site, with sidebar sections for audio books, books, movies, shows, video games, groups, people and fitness, and genre tiles showing cover mosaics.

Ryot Measurements page with a time span selector, graph and table tabs and a line graph of a sugar level statistic over two years
Body measurements graph

The measurements view from the official site: choose a time span, switch between graph and table, and plot a statistic such as sugar level across 157 data points.

Ryot workout logger showing cable hip adduction sets with previous weight and reps, weight and reps inputs, completed set checkboxes and rest timers
Live workout logging

The live workout logger from the official site: per-set previous values, weight and rep inputs, completion checkboxes and rest timers between sets.

Source: official Ryot project page.

Key capabilities

  • Media library for many content types Track movies, TV shows, anime, manga, books, audiobooks, podcasts, music and video games, with a watchlist, favourites and custom collections. The website adds visual novels. Metadata comes from external providers listed in the repository, including TMDb, IGDB, AniList, Hardcover, Audible, Google Books, ListenNotes and iTunes, and some need your own API tokens.
  • Seen history, progress and reviews Entries can be marked as seen repeatedly, so rewatches and re-reads are kept, and you can write private or public reviews and ratings. In-progress shows and books show their status. Pro adds a manual time-spent override on seen entries for more accurate consumption totals.
  • Importers for existing history The documentation lists importers for AniList, Audiobookshelf, Goodreads, Grouvee, Hardcover, Hevy, IGDB, IMDb, Jellyfin, MediaTracker, Movary, MyAnimeList, Netflix, Open Scale, Plex, StoryGraph, Strong, Trakt, Watcharr and a generic JSON format. The 10.5 line added IMDb CSV and Trakt zip exports. Each importer creates a report so you can see what was matched.
  • Integrations that record watching automatically Documented integrations cover Audiobookshelf, Emby, Jellyfin, Kodi, Komga, Plex, Radarr, Sonarr, YouTube Music, a generic JSON endpoint and a browser extension. Jellyfin and Plex send progress through a sink webhook, while some integrations pull from a service. Fixes in 10.5 improved Plex scrobbles, so check that your server version works with the sink.
  • Calendar, reminders and where to watch A calendar shows upcoming releases for what you track, and notifications tell you when a new episode appears. A watch-providers view shows where a title is legally available in your country. You can also set reminders for something you intend to watch.
  • Workout logging with an exercise database Log workouts in real time with sets, weight, reps, rest timers and supersets, using a database of more than 800 exercises with instructions that comes from the open Free Exercise DB. You can add custom exercises and upload images. Pro adds inline exercise history while logging and workout templates.
  • Body measurements and progress graphs Record body weight, blood sugar or other measurements and view them as a graph or table over a chosen time span. Exercise progress graphs show how lifts change over time. The official screenshot shows a sugar-level series with a point count.
  • Collections Collections group items in custom lists such as favourites or a watch queue, and each is shown with a mosaic of covers. Pro adds collaborators and custom information templates on collections, plus recommendations and saved filter presets.
  • Sharing through access links Pro can create access links so that friends or family can view part of your data without an account. Treat these like unlisted URLs and revoke them when finished. The 10.5 line fixed a bug that allowed revoking another user's link.
  • Recommendations and suggestions Pro provides personalised recommendations based on favourites and watch history. Community users still get media details, genres, groups such as film series, and a people view for cast and crew.
  • GraphQL API The backend exposes a GraphQL API at the server's /backend/graphql path for custom integrations, as linked from the README. The schema is the reference, so use introspection from your own instance. Treat the API as the app's internal interface and pin to a version before building on it.
  • Authentication and access control Besides the admin access token, the documentation describes OpenID Connect authentication. Several 10.x security fixes address cross-user authorization, so keep the instance on a current patch version, especially if more than one person shares it.
  • Notifications Notification support covers Discord, ntfy and Apprise, which reaches many more services. The website describes nine supported notification platforms. Use these for release alerts and reminders.
  • Progressive web app on mobile The README states PWA support for mobile use, so you can add the web interface to a phone home screen. There is no native iOS or Android app. The interface adapts to a phone, a tablet and a desktop.
  • Data export and ownership Everything lives in your PostgreSQL database, and the docs include an exporting section and a migration guide for major upgrades. Back up the database before moving between major versions.
  • Dark and light themes and preferences Fine-grained preferences control which media types and features are shown, so you can hide fitness or a content type you do not use. The interface supports dark and light mode.
Advertisements

Where Ryot fits

Keeping a media diary across services

Connect Jellyfin, Plex or Kodi so watching is logged automatically, then import your history from Trakt, Goodreads or MyAnimeList; the integrations overview and importing overview list the supported services. Compare the first import report with your original lists and fix mismatched titles by hand. Decide early which service remains the source of truth to avoid duplicate entries.

Logging gym workouts and body measurements

Create a workout, search the exercise database, record sets with rest timers and finish the session to see totals. Add measurements such as body weight on a schedule and read the graph over months. Check that units match your preference before entering historic data.

Importing history from other trackers

Export from the old service, run the matching importer on a test instance and read the report. Look for items with the wrong match, missing ratings or odd dates. Re-run on the production instance only when the test result is acceptable, and keep the original export file.

Running a small family instance

Create a user per person, restrict who can sign up and put the server behind HTTPS. Add OpenID Connect if you already have an identity provider, following the authentication guide. Update promptly after security releases, because several recent fixes concern one user reading another user's data.

Sharing a collection with friends

Build a collection such as films for a movie night, add collaborators or create an access link where Pro allows it, and agree who can edit. Revoke links after the event and review which data the link exposes.

Upgrading and backing up

Back up PostgreSQL, read the release notes between your version and the target and the migration guide for major jumps and pin a major tag such as v10 in the Compose file. After upgrading, run a search, open a recent workout and trigger an import to confirm that providers and tokens still work.

Reviews of Ryot

No reviews yet

Be the first to share your experience with Ryot.

Loading review form…

Alternatives to Ryot

Compare Ryot with these tools →