No description
  • TypeScript 50.8%
  • Rust 48.7%
  • CSS 0.2%
  • Python 0.2%
  • Dockerfile 0.1%
Find a file
skai 3926580d09
Some checks failed
Build and Push Docker Image / build (push) Successful in 16m4s
Main / pre-workflow-checks (push) Has been cancelled
Main / create-release (push) Has been cancelled
Main / build-transactional (push) Has been cancelled
Main / build-backend (map[target:aarch64-unknown-linux-gnu]) (push) Has been cancelled
Main / build-backend (map[target:x86_64-unknown-linux-gnu]) (push) Has been cancelled
Main / build-docker (push) Has been cancelled
Main / upload-kodi-plugin (push) Has been cancelled
Main / upload-browser-extensions (push) Has been cancelled
Main / deploy-docs (push) Has been cancelled
fix: correct concurrently labels and force shell execution for entrypoint
2026-05-02 23:07:49 -04:00
.github/workflows ci: add docker build workflow and make Dockerfile self-contained 2026-05-02 21:46:05 -04:00
.yarn/releases Bugfixes (#709) 2024-03-21 11:57:58 +05:30
apps Add dynamic web search hyperlink for media items (#1757) 2026-04-29 06:31:37 +05:30
ci fix: correct concurrently labels and force shell execution for entrypoint 2026-05-02 23:07:49 -04:00
crates fix: remove compile-time env dependencies and update rust version 2026-05-02 22:01:45 -04:00
libs feat: add user impersonation link generation functionality 2026-02-27 17:21:11 +05:30
tests Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30
.dockerignore Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30
.gitattributes feat: initial commit 2023-04-03 22:32:23 +05:30
.gitignore Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30
.yarnrc.yml Bugfixes (#709) 2024-03-21 11:57:58 +05:30
AGENTS.md Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30
biome.json feat: specify exact turbo version in Dockerfiles and update build-plugin.sh 2026-02-20 20:41:00 +05:30
Cargo.lock Upsert calendar events and propagate database errors in background jobs (#1751) 2026-04-17 22:30:42 +05:30
Cargo.toml Fix OIDC authentication with internal CA and improve job storage type clarity (#1745) 2026-04-13 12:39:42 +05:30
Cross.toml refactor: remove unkey dependency and implement direct API verification 2025-11-12 08:24:09 +05:30
Dockerfile fix: correct concurrently labels and force shell execution for entrypoint 2026-05-02 23:07:49 -04:00
LICENSE General improvements (#48) 2023-05-26 14:45:15 +05:30
package.json Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30
README.md Rewrite Komga integration to use API key and polling (#1682) 2026-02-04 20:29:05 +05:30
rust-toolchain.toml build: upgrade dependencies 2026-02-13 12:35:35 +05:30
tsconfig.json chore(tests): move location of the tests directory 2025-09-07 12:53:24 +05:30
tsconfig.options.json Add Ryot Browser Extension with enhanced features and integrations (#1465) 2025-07-17 09:24:02 +05:30
turbo.json Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30
yarn.lock Remove Moon and migrate to Turbo (#1710) 2026-02-20 18:47:07 +05:30

Ryot

A self hosted platform for tracking various facets of your life - media, fitness and more.


DocumentationLive DemoDiscordPro Features


Ryot Dashboard

Quick Start

Create a docker-compose.yml file:

services:
  ryot-db:
    restart: unless-stopped
    image: postgres:18-alpine
    environment:
      - POSTGRES_PASSWORD=postgres
    volumes:
      - postgres_storage:/var/lib/postgresql

  ryot:
    image: ignisda/ryot:v10
    restart: unless-stopped
    ports:
      - "8000:8000"
    environment:
      - SERVER_ADMIN_ACCESS_TOKEN=CHANGE_ME_TO_A_LONG_RANDOM_STRING
      - DATABASE_URL=postgres://postgres:postgres@ryot-db:5432/postgres

volumes:
  postgres_storage:

Then run docker compose up -d and visit http://localhost:8000. For production setups, see the installation guide.

What is Ryot?

Ryot (Roll Your Own Tracker), pronounced "riot", is a self-hosted tracker for your media consumption and fitness activities. Track the books you read, shows you watch, games you play, and workouts you complete - all in one place with a clean interface and insightful statistics.

Demo

Try the live demo to explore the interface. Demo data resets every 24 hours.

Media Tracking

  • Track movies, TV shows, anime, manga, books, audiobooks, podcasts, music and video games
  • Import from Goodreads, Trakt, MyAnimeList, Audiobookshelf and more
  • Automatic tracking via Jellyfin, Plex, Kodi, Emby integrations

Fitness

  • Log workouts with a comprehensive exercise database
  • Track body measurements over time
  • Monitor progress with detailed graphs

Workout tracking Measurements

Technical

  • Self-hosted with full data ownership
  • OpenID Connect authentication
  • Notifications via Discord, Ntfy, Apprise
  • GraphQL API for custom integrations
  • PWA support for mobile use
  • Written in Rust for performance

Pro Version

Ryot Pro adds profile sharing, personalized recommendations, supercharged collections and more. Learn more about the pro version.

Community

Questions or feedback? Join the Discord server or open a GitHub issue.

Acknowledgements

Migrating from v9?

If you were using v9.* of Ryot, please read the migration guide for instructions to upgrade to v10.