SRS screenshot thumbnail

SRS

Viewers arrive on browsers, phones, and desktop players, and SRS meets each of them with the right protocol from a single published stream. A broadcaster pushing RTMP can reach browser viewers through WebRTC with sub-second latency, phone apps through HLS, and desktop players through HTTP-FLV, all from the same live source without running parallel encoders. WHIP endpoints accept WebRTC ingest from browser studios and tools like OBS, while WHEP serves WebRTC playback, so an entire publish-to-viewer path can stay on modern web protocols. Operators shape each channel with virtual hosts, authenticate publishers and players through HTTP hooks that consult your own backend, and record live streams to disk as DVR archives for replay. Forwarding republishes a stream to YouTube, Facebook, or another SRS instance, and origin clustering lets edge servers pull from a central origin so one ingest feeds viewers in several regions. The built-in HTTP API reports streams, clients, and server health for monitoring, and GB28181 support ingests surveillance camera networks alongside creator broadcasts. Configuration lives in a single reloadable file, so changing a vhost or enabling HLS rarely means restarting the listeners your audience is attached to. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Janus Gateway screenshot thumbnail

Janus Gateway

One Janus installation can host a video meeting in one session, stream a camera feed in another, and bridge a browser call into a telephone network in a third, because Janus is a general-purpose WebRTC server whose work is done by interchangeable plugins. The VideoRoom plugin publishes each participant's streams to everyone else in the room with simulcast and viewport selection, so a class or team call adapts quality per viewer instead of forcing one bitrate on all. Streaming mounts live or prerecorded sources, including RTSP cameras and RTP feeds, and hands them to any number of WebRTC viewers, while AudioBridge mixes voices into conference rooms with recording and signed-token access. SIP and NoSIP plugins register with existing VoIP infrastructure and place or receive calls, translating between WebRTC media and telephone audio so a web page can ring a desk phone. Record&Play captures publisher streams to files you can replay through the same server, TextRoom adds data-channel chat rooms, and Lua or JavaScript plugins let you script custom media logic without recompiling the core. Applications talk to Janus over HTTP or WebSocket APIs, with RabbitMQ, MQTT, and NATS transports for bus-driven deployments, and event handlers report session activity to your monitoring stack. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. GPL-3.0 licensed.

Deploy
PodFetch screenshot thumbnail

PodFetch

Podcast enthusiasts and homelab archivers automate digital episode preservation and stream personal audio feeds using PodFetch, an open-source self-hosted podcast manager that combines scheduled RSS downloads, Podcasting 2.0 transcript indexing, and browser playback into a modern listening platform. Listeners can subscribe to international podcast channels through direct feed URLs, Apple Podcasts directory searches, or bulk OPML subscription imports, configuring background polling timers to download new releases automatically upon publication. The integrated audio player supports variable speed playback, episode bookmarks, listening histories, and fullscreen visualization modes directly inside responsive desktop and mobile browser sessions. Advanced search capabilities leverage Podcasting 2.0 synchronized transcripts and automated speech-to-text generation via OpenAI-compatible Whisper APIs, allowing collectors to run full-text keyword searches across every spoken phrase in their audio archive. Built-in GPodder API synchronization maintains subscription lists and playback positions across popular smartphone apps like AntennaPod and native companion clients without relying on commercial cloud accounts. Server operators can assign multi-user accounts with private favorites lists, export customized RSS aggregation streams, and route storage paths between fast solid-state drives and large secondary mechanical hard disks. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. Apache-2.0 licensed.

Deploy
Blockbusterr screenshot thumbnail

Blockbusterr

Your Radarr and Sonarr libraries only grow when someone remembers to add titles, and Blockbusterr removes that chore by discovering movies and shows on a schedule and delivering the ones that pass your rules. Jobs pull trending, popular, anticipated, box-office, and list feeds from TMDB, Simkl, Trakt, and MDBList, with experimental Letterboxd lists available when enabled. Every job applies one reusable rule set: content-rating limits, blocked and allowed titles, genre, year, runtime, language, and vote boundaries decide what qualifies before anything reaches your stack. Weighted scores blend IMDb, Trakt, TMDB, and Metacritic ratings, and Smart Popular adjusts its threshold against the feed it reads. Preview mode shows accepted, rejected, and skipped titles with the reason for each decision, so a new job can be tuned safely before it runs unattended. Delivery sends movies straight to Radarr and shows to Sonarr, or creates Jellyseerr and Seerr requests when you prefer an approval queue. Per-job caps and a rolling global budget keep a busy feed from flooding disk space, and an instance-wide dry run tests the whole setup without touching your library. Activity entries and job-run history record scores, decisions, and outcomes with posters. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Sake screenshot thumbnail

Sake

Your e-reader knows exactly where you stopped reading, and Sake makes your whole library know it too, with a self-hosted web library that syncs KOReader progress, notes, and highlights across every device you own. Browse your collection in a clean web app with covers, metadata, shelves, ratings, and reading state, and organize it with rule-based shelves that file new books automatically according to conditions you define. Pair a KOReader device once and progress uploads in the background when the reader sleeps, new books download on request, and highlights land in a searchable annotations hub where you can edit notes inline and export them as Markdown or JSON. An existing on-device library can be exported back into the web app complete with its sidecar data, so years of reading history move with you. Search providers including Open Library, Project Gutenberg, and Anna's Archive (through Libgen mirrors) put new books one query away from your shelves, and metadata lookups enrich them from Google Books, Open Library, or Hardcover. OPDS and WebDAV endpoints serve any compatible reader app with optional separate Basic-auth passwords, the built-in plugin updater keeps the KOReader plugin current without manual file copying, and reading statistics chart your habits across the library. The installable progressive web app keeps the library one tap away on phones and tablets. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. AGPL-3.0 licensed.

Deploy
Black Candy screenshot thumbnail

Black Candy

With 4,300+ GitHub stars and native mobile apps on three platforms, Black Candy transforms any VPS into a private Spotify-style streaming service for your personal music collection. The Ruby on Rails 7 backend with Hotwire Turbo and Stimulus delivers a responsive single-page-feeling web player supporting album browsing, artist views, playlists, favorites, and queue management without full page reloads. Point it at a media directory containing MP3, FLAC, OGG, AAC, or WAV files and Black Candy indexes metadata, fetches album artwork from Discogs API, and begins streaming immediately with on-the-fly transcoding that adapts bitrate to client bandwidth. Multi-user support gives each account independent playlists, favorites, and listening history while sharing the same music library — ideal for families or shared households. Native iOS, Android, and F-Droid apps maintained as separate repositories provide offline caching, background playback, and server discovery for mobile listening. The admin panel manages user accounts, configures media paths, and sets Discogs API tokens for automatic cover art retrieval. Deployment requires one Docker command — `docker run -p 80:80 ghcr.io/blackcandy-org/blackcandy:latest` — with persistent storage volumes for the SQLite database and media directory. For larger deployments, switch to PostgreSQL via environment variables with dedicated database URLs for ActionCable, SolidQueue, and SolidCache. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Shortlist screenshot thumbnail

Shortlist

Everyone on your Plex server gets their own private recommendation rows with Shortlist, built from what each person actually watched and visible to nobody else. For each viewer it reads their Plex watch history, picks unwatched titles from your library, and explains every pick with the reason it earned its place. Rows land on Plex Home labelled, hidden from every other account by share filters, and only then promoted, so a row is never visible to the wrong person, not even briefly. Six row kinds, from Picked for You to seasonal picks and personal requests, start from eleven templates instead of a blank form. A seasonal row follows the calendar through Halloween, Christmas, and twenty more ready-made occasions, then hides itself between seasons. Rebuilds run nightly, weekly, or monthly on your cadence, and the dashboard shows what was delivered against what people started and actually finished, per user and per row. Missing a strong pick, Shortlist asks Radarr, Sonarr, or Overseerr for it: the boldest few auto-send nightly, the rest wait for one click in the Requests inbox. No AI key is required; add one and Describe a row turns slow-burn heist films into a themed row filled nightly for each person. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Labby screenshot thumbnail

Labby

Labby gathers a whole homelab onto one live dashboard you host yourself, covering services, containers, downloads, and media servers. Widgets watch your service monitor, Docker containers, qBittorrent or Transmission queues, SABnzbd, AdGuard Home, Jellyfin, Emby, Plex, Beszel, Radarr, Sonarr, plus weather, calendar, speedtest, bookmarks, Reddit, and Hacker News, and the server pushes every change to your browser over server-sent events so nothing waits on a refresh timer. The dashboard is not a read-only poster: start and stop containers, pause and resume torrents, and toggle AdGuard protection straight from its widgets. Everything configures from the in-app Manage Services page, where service URLs, API keys, poll intervals, and multiple instances of the same integration (two Radarr servers, say) live in a small SQLite database instead of scattered environment files. Named color schemes restyle the board and save with the config, and icon sources span dashboard-icons, selfh.st, Lucide, or your own URLs. Login is off by default for trusted home networks, with a clear warning to keep it behind a LAN, VPN, or forward-auth proxy, and optional OIDC sign-in through Authentik, Authelia, Keycloak, or Pocket ID when you want a real front door. One container, one volume, and your lab finally explains itself at a glance. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
MediaServer screenshot thumbnail

MediaServer

Your folders are the library with MediaServer, a self-hosted player that scans the directories you already keep and serves their video and audio through a tidy web interface. Browsing feels like a personal YouTube: folders open as shelves of content, and the custom player keeps the video going as you explore what to watch next. Keyboard shortcuts drive playback, speed controls and player statistics sit a click away, and an ambient background glows behind the video. Every view is remembered: full watch history with timestamps, re-watch counts, per-user totals, and playback heatmaps replace the single watched tick other servers stop at. Metadata belongs to you: edit titles, thumbnails, tags, seasons, and release dates for videos, folders, and albums, and the edits survive files being moved or renamed. Music gets its own treatment with embedded cover art, a lyrics viewer and editor fed by LrcLib, and auto-scrolling lines that follow the song. Subtitles extract themselves from embedded and external files, folders and single videos share as readable links, and each share renders a rich preview card for Discord or chat. Behind the scenes, a dashboard manages libraries, scanning jobs, users, and server performance. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. AGPL-3.0 licensed.

Deploy
Issued screenshot thumbnail

Issued

Issued is a self-hosted comic library server: point it at the folder of CBZ, CBR, CB7, and PDF comics already sitting on your server and the whole collection becomes browsable and readable from any device. Point it at your existing folders and it keeps your folder structure exactly as it is, scanning automatically when new issues appear and generating cover thumbnails so you can see what a file is before opening it. Read in the browser with the built-in web reader on desktop or mobile, with light and dark themes, or connect reader apps such as Panels, Chunky, KyBook, and Moon+ Reader through the standard OPDS catalog at /opds/. OPDS-PSE 1.2 page streaming lets compatible apps read individual pages as JPEGs without downloading whole archives, and OpenSearch discovery lets clients find library search automatically. Edit metadata in place using ComicInfo.xml data, mark series as ongoing to spot new issues, totals, and possible gaps, and use Continue Reading and Last Added views to resume the latest issue in progress or start the next unread one. An optional reader password protects browser access, and one Docker command on port 8181, with unrar included for CBR files, gets the whole library online. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Urocissa screenshot thumbnail

Urocissa

Urocissa is a self-hosted photo and video gallery engineered to browse, search, and filter a million-image library in under a second on modest hardware. Its photo stream scrolls endlessly without pagination or lazy loading, flying past the browser DOM height limit that breaks other galleries long before a million items. Search understands boolean operators, so a query mixing and, or, and not narrows a lifetime of photos in milliseconds, and select-all is equally instant across the whole collection. Point it at folders and it watches them for new arrivals, importing photos and videos automatically while duplicate detection keeps redundant copies out. EXIF data is extracted for every image, and your own tags layer manual organization on top, with timeline navigation and rotation built in. Albums share collections with family or clients, a read-only mode publishes a public gallery safely, and videos play inline without leaving the page. The index that makes this fast lives in memory at roughly half a gigabyte per million photos, and the whole application ships as a binary of about 25 megabytes, optionally protected by a password. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Kumiho screenshot thumbnail

Kumiho

Drop a hard drive's worth of comics, e-books, and audiobooks into folders, point Kumiho at them, and the whole collection becomes a library you can browse and read from any browser. The scanner walks nested folders recursively and treats the folders that actually hold pages or files as series, so an existing collection works as it is, with no metadata matching ritual before the first read. Comics and manga open in a responsive viewer built for the format: page turning on a desktop, continuous webtoon scrolling on a phone or tablet. E-books in EPUB, PDF, and TXT open in the same library, while archives in ZIP and CBZ are read directly without unpacking. Audiobooks get a real player, with a chapter list, resume playback that remembers where you stopped, progress tracking, bookmarks, and a sleep timer for listening at night. A series folder can even carry its own soundtrack: an MP3 whose filename matches starts playing as background music while you read. Everything runs from one lightweight Go server in a single Docker container, storing its database and configuration in mounted volumes, so the library sits comfortably on a small VPS next to the files it serves. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. Apache 2.0 licensed.

Deploy
ivfi screenshot thumbnail

ivfi

IVFi-PHP turns folders on your server into browsable media galleries: drop one PHP file into a web root and every directory of photos, videos, and audio becomes a polished, searchable index page. Hovering a filename previews the image or video inline, and clicking opens the gallery view where you can move through a whole directory's media, download originals, or reverse-search an image. Audio files play in place with a live visualiser, seeking, and their own volume control. Finding things is instant: filter filenames or file types with plain text, wildcards, or full regular expressions, sort by name, date, or size with settings that persist between visits, and dates automatically match the visitor's timezone. Select any set of files and download them as a single ZIP archive, or share direct download links file by file. Directories can render their README files as documentation pages, listings can hide sensitive entries through server-side filters, and optional Digest authentication keeps a listing private without any account database. Themes and per-visitor display preferences restyle the index, basic listings work even with JavaScript disabled, and the whole application also ships as a Docker image for a one-container deployment. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. GPL-3.0 licensed.

Deploy
Atsumeru screenshot thumbnail

Atsumeru

Atsumeru is the bookshelf server for people whose manga and comic collection lives in CBZ files scattered across drives: point it at the folders and it becomes a tidy library you can read from anywhere. Series organize themselves into auto categories, custom categories, and metacategories, and metadata edits are painless, with automatic import from ComicInfo.xml and book_info.json files and parsing from supported catalogs when you want richer records. Reading happens in native apps for Windows, Linux, Mac, and Android, or in the built-in WebUI, and two-way history synchronization keeps your place when you move from desk to phone. Whole series download inside supported apps for offline reading, which turns a commute into a chapter backlog clearing session. Multiple users get separate histories and powerful access controls, so a household shares one server without sharing reading progress or seeing each other's shelves. A documented REST API with Swagger on board covers automation and custom clients. The server runs as a single jar or a Docker container on port 31337, small enough for the spare machine already holding the files. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Ambry screenshot thumbnail

Ambry

Ambry is a personal audiobook streaming server that keeps a collection you own on hardware you control, ready to stream to any browser or phone. Upload your audiobook files once, and the library becomes streamable to any device through a browser or the native mobile application. The server reads durations, tags, and chapter markers straight from the audio files, so a long novel arrives with its structure intact instead of as one anonymous ten-hour blob, and the original files are served untouched. First boot walks you through creating the initial administrator account, after which the instance restarts ready for listening. Households can open registration to family members or close it entirely, keeping the library an invitation-only shelf. Forgotten passwords and registration messages go out through the configured mail provider, so account recovery works without manual intervention. The collection itself lives in PostgreSQL with uploads on a persistent volume, and the whole service runs from a container image on a configurable port. Put a commute listen on your phone, a history title on a kitchen tablet, and a shared family library behind one address, all served from hardware you control. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Substreamer screenshot thumbnail

Substreamer

A free, polished web client for Subsonic-compatible music servers: Substreamer is the browser-based frontend you point at your existing streaming backend to play your own library from anywhere. It speaks the Subsonic API (v1.13 and higher), which makes it compatible with the whole ecosystem that has grown around that protocol: the original Subsonic server, its forks Airsonic and Madsonic, and modern implementations like Navidrome and Ampache. That decoupling is the point - your music files, transcoding, and library indexing live on whichever server you prefer, while Substreamer provides the listening experience: browse by artist, album, and genre, build and manage playlists, search your collection, and stream on demand. This RepoCloud deployment runs the containerized web edition, so the same interface is available from any browser without installing a native app, and it pairs with the Substreamer mobile apps that made the client popular. For anyone assembling a self-hosted Spotify replacement - typically Navidrome for the backend plus a good client - Substreamer fills the client half with a clean, familiar player UI. Because it is a stateless client, the container is lightweight and low-maintenance: connect it to your server's URL and credentials, and your entire collection is streaming in minutes, with no subscription and no catalog that can disappear.

Deploy