Back to projects

Riam

Admin panel for media servers that centralizes Emby and Jellyfin user management, making creation, access control, and monitoring easier from a single interface.

Context

Riam is an admin panel for media servers that centralizes Emby and Jellyfin user management into a single clear and easy-to-use interface.

The goal is to simplify common tasks such as creating users, managing access, and checking the overall server status without navigating the internal settings of each platform.

Screenshots

Main panel view with media server user management.

Tech stack

ReactTanStack RouterTanStack QueryHonoDrizzlePostgreSQLDragonfly

Key points

Centralized Emby and Jellyfin user management from a single admin panel.

Simple flows for user creation, access control, and server monitoring.

Learnings

01

Connecting hundreds of users across multiple servers drove requests per minute so high that my VPS was suspended on suspicion of a DDoS attack, forcing me to implement rate limiting and real-time metrics to control and observe traffic.

02

I learned to use a Redis-like system (Dragonfly) to cache images and recent requests, as well as filtering out playbacks shorter than 60 seconds to avoid inserting noise into the server.

03

I also learned to structure deployments in Coolify so the API and web release independently, allowing each service to be updated without disrupting the other.