23 apps Media
Jellyseerr screenshot thumbnail

Jellyseerr

Browse trending titles, search anything, request it in two clicks: Jellyseerr gives Jellyfin, Emby, and Plex users a beautiful storefront for the media library. Born as the Overseerr fork that added Jellyfin and Emby support (the projects have since unified as Seerr), it handles the full request lifecycle - users authenticate with their existing media-server accounts, pick individual seasons or movies in a clean interface, and admins approve or decline from a simple queue, including on mobile. Approved requests flow straight to Sonarr and Radarr, which handle acquisition automatically, with support for separate 4K server instances. Regular library scans keep availability accurate, so users see instantly what already exists instead of requesting duplicates. A granular permission system controls who can request what - auto-approval for trusted users, quotas and limits elsewhere - and override rules adjust request routing by user, tag, or other conditions. Watchlist and blocklist functions curate discovery, notifications reach email, Discord, Telegram, Slack, Pushover, and Pushbullet, and both PostgreSQL and SQLite are supported. Localized into many languages, it turns "can you add this movie?" texts into a self-service system that runs itself.

Deploy
Wizarr screenshot thumbnail

Wizarr

Getting non-technical friends and family onto a media server is its most tedious chore - Wizarr solves it. Instead of manually creating accounts, dictating server addresses, and explaining which app to install, you send one invite link. When the recipient clicks it, Wizarr creates their account on your server automatically - Plex, Jellyfin, Emby, Audiobookshelf, Komga, Kavita, and Romm are all supported - then walks them through a mobile-first, app-like onboarding wizard: download the right client, sign in, and learn how to request movies through your Overseerr or Ombi instance, with an optional Discord server invite along the way. Invitations are genuinely manageable: set expiration dates, usage limits, passphrases, library-scoped access tiers, and time-limited memberships that end access automatically. The wizard itself is fully customizable - Markdown-based steps managed from the admin UI, organized into pre-invite and post-invite phases (terms of service before joining, app setup after), reorderable bundles assignable to specific invitation types, and combined flows for invites spanning multiple servers. Multi-server and multi-admin support manages several backends from one dashboard, SSO support is plug-and-play, and a REST API with OpenAPI/Swagger documentation covers automation. A Flask/HTMX app in a single Docker container.

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
Owncast screenshot thumbnail

Owncast

Twitch and YouTube Live, replaced by infrastructure you control: Owncast is a self-hosted live streaming and chat server. Point OBS, Streamlabs, or any RTMP-capable broadcaster at the server's ingest port, and Owncast transcodes the feed with FFmpeg into HLS with multiple quality variants, playing it in a built-in web page with a real-time chat beside it. Chat supports anonymous participation, custom emotes, and moderation tools - message removal, user bans and suspensions - with optional authentication via IndieAuth or a Fediverse account. ActivityPub integration puts the stream on the Fediverse: viewers on Mastodon and compatible services can follow a channel and get notified the moment it goes live. Video delivery can come straight off the server or offload HLS segments to S3-compatible object storage so a modest VPS handles thousands of concurrent viewers while only managing ingest and chat. The backend is a single Go binary with a React frontend - no accounts platform, no database server, no dependency stack - and the player embeds in any website. MIT-licensed, with roughly 9k GitHub stars, zero platform fees, and no algorithm or takedown policy between you and your audience.

Deploy
Kavita screenshot thumbnail

Kavita

Manga, comics, ebooks, and light novels get a streaming-service-style home in Kavita - a fast, cross-platform reading server for the DRM-free collection you share with family and friends. It natively serves CBZ, CBR, CB7, ZIP/RAR/7z archives, raw images, EPUB, and PDF, with hand-crafted web readers per format: webtoon scrolling, single and dual-page spreads with advanced caching for the comic reader, and a book reader with adjustable fonts, spacing, margins, color themes, and column modes. Reading progress tracks per user, so everyone resumes exactly where they stopped on any device. Metadata parses from filenames, ComicInfo.xml, and EPUB fields, feeding index-backed search, smart filters, collections, reading lists with CBL import, and Want to Read queues. Role-based user management covers age restrictions, per-library access, and OIDC authentication. An OPDS feed connects third-party clients - Panels on iOS, Librera on Android, KOReader on e-ink devices - and a comprehensive REST API supports custom integrations. EPUB annotation and highlight support, custom theming, and full localization round it out. Built with .NET and Angular, it handles 50,000+ file libraries without strain; optional Kavita+ adds AniList scrobbling, recommendations, and external metadata.

Deploy
SnapOtter screenshot thumbnail

SnapOtter

Fifty-plus image processing tools in a single Docker container, with no Redis, no Postgres, and no external dependencies: SnapOtter is a self-hosted image toolkit. The everyday operations are all here: resize, crop, compress, watermark, vectorize, meme generation, GIF creation, and format conversion spanning 55+ input formats (including 23 camera RAW formats) to 14 output formats. What sets it apart is the local AI layer: background removal, photo upscaling and restoration, object erasing, face blurring, OCR, and canvas expansion all run on locally hosted models, so no image ever leaves your server - a hard guarantee that cloud tools like remove.bg or Canva can't make. Optional NVIDIA GPU support accelerates those AI tasks substantially when hardware is available, but everything works on CPU. A built-in layer-based editor handles composition work directly in the browser, and screenshot beautification turns plain captures into polished visuals with backgrounds, shadows, and padding - useful for docs and marketing alike. Batch operations process unlimited images simultaneously, and the full REST API with OpenAPI documentation exposes every tool for pipelines and automations: thumbnail generation on upload, bulk RAW conversion, automated watermarking. For teams processing sensitive imagery or anyone tired of per-image SaaS pricing, SnapOtter replaces a stack of subscriptions with one private container.

Deploy
Emby screenshot thumbnail

Emby

Point Emby at your movie, music, and photo libraries and it becomes a private streaming service: metadata and artwork arrive from TMDB and TVDB, everything lands in a polished browsable interface, and media transcodes on the fly whenever a client can't play the original format. The client reach is the selling point: native apps span Android TV, Apple TV, Google TV, Fire TV, Roku, LG and Samsung smart TVs, iOS, Android, Apple CarPlay, Android Auto, plus web browsers and desktop apps for Windows, macOS, and Linux, and DLNA devices are auto-detected for casting and remote control. Multi-user support gives each household member their own account, watch history, favorites, and recommendations, with genuinely capable parental controls: content restrictions, access schedules, time limits, and live monitoring with remote control of kids' sessions. Live TV works with hardware tuners like HDHomeRun or M3U playlists, with free guide data in the US, Canada, and UK. The server and core features are free; an optional Premiere key adds hardware-accelerated transcoding, DVR recording, offline sync, and Cinema Mode intros.

Deploy
Komga screenshot thumbnail

Komga

What Jellyfin is for video, Komga is for comics, manga, BDs, magazines, and eBooks: point it at folders of CBZ, CBR, CBT, PDF, and EPUB files and it becomes a proper library with cover art, embedded metadata import, and per-user reading progress. The responsive web reader handles multiple reading modes - left-to-right for western comics, right-to-left for manga, webtoon scrolling - while collections and read lists organize crossovers and story arcs, with ComicRack .cbl read list import for existing curation. Its openness is the real differentiator: OPDS v1.2 and v2.0 feeds serve virtually every reader app (Panels, Moon+ Reader, Mihon/Tachiyomi, KyBook), with OpenSearch and page-streaming extensions so mobile apps fetch pages on demand instead of whole archives. E-ink support is built in, not bolted on - Kobo devices sync directly against Komga instead of Kobo's servers, with two-way read progress, on-the-fly KEPUB conversion via Kepubify, and optional proxying so official Kobo purchases still work; KOReader sync covers everything else. Multi-user management brings per-library access control, age restrictions, and label restrictions for family setups. Housekeeping tools detect duplicate files and duplicate pages, and a REST API feeds a healthy ecosystem of community scripts. Runs from a single Docker container with embedded SQLite.

Deploy
PeerTube screenshot thumbnail

PeerTube

The fediverse's answer to YouTube comes from French non-profit Framasoft: PeerTube is a TypeScript/Angular video platform where hundreds of independently operated instances federate over ActivityPub into one network. Videos you publish are discoverable across the whole video fediverse, and viewers can follow your channels from Mastodon or any ActivityPub platform - or plain RSS - without needing an account on your instance. The namesake innovation attacks video hosting's core cost problem: alongside HLS delivery, an optional WebRTC-based P2P layer lets concurrent viewers' browsers share video segments with each other, so a video going viral distributes its own bandwidth demand instead of crushing your server; instance redundancy extends this by letting friendly instances cache each other's videos. Livestreaming is first-class - stream via OBS or any RTMP software, host permanent streams, enable replays, and interact through live chat. Creators get channels, playlists, analytics, built-in video editing (trim, watermark), and an embeddable player for any website. There are no ads, no data mining, and no recommendation algorithm engineered for watch-time - the project's explicit design stance. Admins control federation policy, P2P settings, and theming; a plugin system extends the rest. AGPL-licensed, 300+ contributors, in active development since 2015.

Deploy
Bazarr screenshot thumbnail

Bazarr

Subtitles are the one chore Sonarr and Radarr leave behind - Bazarr finishes the *arr media stack by automating them. It connects to both via their APIs and mirrors their libraries - it doesn't scan disk itself, it manages exactly what your *arr apps index. For every monitored episode and movie it checks existing internal and external subtitles against your language profiles, then hunts missing ones across dozens of providers - OpenSubtitles.com, Podnapisi, Addic7ed, Subscene, and many regional sources - covering 184 subtitle languages including forced/foreign-dialogue tracks. Matching is smarter than filename guessing: releases are compared by release group and source, some providers support exact file-hash matching, and every downloaded subtitle gets a percentage score. Set a minimum score per Sonarr/Radarr connection and Bazarr rejects weak matches; enable upgrades and it replaces previously downloaded subtitles when better ones surface. Out-of-sync files get fixed too - automatic subtitle synchronization realigns timing after download, triggered only below a configurable score threshold so good subs aren't touched. Per-show and per-movie language configuration, download history, manual on-demand search, and adaptive searching that throttles provider API calls round it out, all behind a clean Sonarr-style web UI written in Python. If your library serves multilingual viewers, this removes the last manual step.

Deploy
Sonarr screenshot thumbnail

Sonarr

Add a series once, set a quality profile, and everything downstream is automated: Sonarr is the smart PVR for Usenet and BitTorrent users. It monitors RSS feeds from your indexers, detects new episodes the moment they release, sends matching grabs to SABnzbd, NZBGet, qBittorrent, Deluge, or another download client, then renames files with fully configurable templates, sorts them into consistent folder structures, and notifies Plex, Kodi, or Jellyfin to update the library. Quality profiles define what's acceptable (HDTV, WEB-DL, Blu-ray, up to 4K) and an upgrade cutoff - when a better release appears, Sonarr replaces the existing file automatically, stepping from HDTV to WEB-DL to Blu-ray until the cutoff is met. Custom formats add weighted scoring for finer-grained release selection, with community-maintained TRaSH Guides presets as the widely accepted defaults. Failed downloads are handled without intervention: Sonarr retries with another release, and manual search shows every candidate with the reasons any was rejected. It scans existing libraries for missing episodes, fully supports specials, multi-episode files, and daily and anime series types, and a calendar view shows upcoming episodes across every tracked show. Runs on Linux, Windows, macOS, and Raspberry Pi, and pairs naturally with Prowlarr for centralized indexer management.

Deploy
Radarr screenshot thumbnail

Radarr

The movie half of the *arr stack: Radarr is a .NET collection manager that automates acquiring films for Usenet and BitTorrent users the way Sonarr does for TV. Add a movie once and Radarr handles the rest: it monitors indexers and RSS feeds, grabs a matching release the moment one appears, sends it to SABnzbd, NZBGet, qBittorrent, Deluge, Transmission, rTorrent, or another connected download client, then imports, sorts, and renames the file into your library structure. Quality profiles are the control surface - define allowed resolutions and a cutoff, and Radarr keeps upgrading files automatically, replacing a DVD rip when a Blu-ray release lands. Custom formats go further, scoring releases by codec, HDR metadata, release group, streaming source, or arbitrary regex so the copy you want always wins the pick. Failed downloads retry with another release automatically; a manual search shows every candidate and explains why one was skipped. Release parsing recognizes director's cuts, special editions, AKA titles, and hardcoded subs. Plex and Kodi integration handles notifications, library refreshes, and metadata like posters, trailers, and subtitles, and a calendar view tracks upcoming releases. It pairs naturally with Jellyseerr for request management and shares its API conventions with the whole *arr ecosystem.

Deploy
Navidrome screenshot thumbnail

Navidrome

Spotify economics without the subscription or catalog gaps: Navidrome, the reference self-hosted music server, streams your own FLAC, MP3, and ALAC collection from a single Go binary with a React/Material UI web player. Its Subsonic/OpenSubsonic API compatibility is the superpower: 50+ existing clients work out of the box, from Symfonium and DSub on Android to Feishin and Sonixd on desktop, plus Android Auto, CarPlay, and Android TV apps. Transcoding is server-managed and FFmpeg-backed - FLAC direct-plays at home and downsamples to MP3, AAC, or Opus over mobile bandwidth, with the OpenSubsonic transcoding extension letting clients declare capabilities and receive per-track direct-play or transcode decisions automatically. Multi-user support gives every account its own play counts, favorites, ratings, and playlists, and multi-library support scopes different collections to different users. The feature list covers serious listening: Last.fm and ListenBrainz scrobbling, artist bios and images, embedded and external lyrics, audiobook bookmarks, saved play queues that resume on another device, internet radio, jukebox mode, and M3U playlist auto-import kept in sync with your folder. Resource usage is famously low - it runs happily on a Raspberry Pi and scales to six-figure track counts.

Deploy
Calibre screenshot thumbnail

Calibre

Serious readers organize, convert, edit, and serve their e-book libraries with Calibre - the definitive open-source e-book manager. This deployment runs the full Calibre desktop application on your server, accessible from any browser, so your library lives in one authoritative place instead of scattered across devices. Its conversion engine is the best in the business, translating between every major format - EPUB, MOBI, AZW3, PDF, DOCX, and dozens more - with fine control over fonts, margins, metadata, and structure detection. Metadata management downloads covers, descriptions, series info, and identifiers from online sources, and every field is editable in bulk. Beyond cataloging, Calibre includes a full e-book editor for EPUB and AZW3 internals, a news engine that fetches newspapers and magazines from the web on schedule and converts them into e-books, book comparison tools, and device syncing that sends the right format to each connected reader. The built-in content server exposes your library over HTTP so phones, tablets, and e-readers can browse and download remotely. A deep plugin ecosystem extends everything - metadata sources, format support, store integrations. For power users, the complete CLI (calibredb, ebook-convert) enables scripted library automation. Your books, your metadata, your server - permanent and DRM-free storage under your control.

Deploy
Prowlarr screenshot thumbnail

Prowlarr

Configure each indexer once, not five times: Prowlarr is the indexer hub of the *arr stack, removing the most tedious duplication in a media automation setup. Instead of configuring the same torrent trackers and Usenet indexers separately in Sonarr, Radarr, Lidarr, Readarr, and Mylar3, you add each one once in Prowlarr and it syncs them to every connected app automatically, complete with category mappings; with Full Sync enabled, adding or removing an indexer propagates everywhere, and a tracker URL change is a one-place fix. Coverage is the deepest available: 500+ torrent trackers with definitions added constantly, 24 native Usenet indexers, generic Newznab and Torznab support for anything else, and custom Cardigann YML definitions with JSON and XML parsing for obscure sources. Built on the same .NET/React base as its siblings, it also earns a place as a search tool in its own right: unified manual search queries every indexer simultaneously at a category level, and you can push multiple releases straight to your download clients without touching Sonarr or Radarr. Health checks and status notifications flag failing indexers, per-indexer statistics track success rates and response times so you can cull unreliable sources, and per-indexer proxy support (SOCKS4/5, HTTP, FlareSolverr) handles trackers behind Cloudflare.

Deploy
Tautulli screenshot thumbnail

Tautulli

Plex's own dashboard shows current streams and forgets everything else - which is why every Plex server admin eventually installs Tautulli, the analytics layer. This Python web application (descended from PlexWatch and Headphones) logs complete watch history - what was watched, who watched it, when, where, from which device and IP, and whether it played directly or transcoded - and turns it into clean Highcharts graphs of daily plays, concurrent streams, bandwidth, and platform breakdowns. The home page surfaces top statistics over configurable windows: most-watched content, most active users, stream type ratios. For running a server shared with family and friends, this is operational truth: spot the user forcing 4K transcodes on a phone, see which libraries earn their disk space, and track sync activity across users. The notification engine triggers on server events - playback starts, transcode decision changes, recently added media, server down - through dozens of agents (Discord, Telegram, Slack, email, webhooks) with fully customizable text and conditions, plus arbitrary script execution. Scheduled newsletters email your users a styled digest of recently added content. A comprehensive API exposes every statistic for dashboards like Homarr, and an official mobile app monitors activity on the go. Themed to match Plex/Web. GPL-licensed.

Deploy
Zipline screenshot thumbnail

Zipline

ShareX and file uploads, next generation: Zipline is a Node.js/React/PostgreSQL server that turns screenshot sharing and file hosting into something you run yourself instead of renting from Imgur or a paid image host. The core workflow is built around ShareX: generate an .sxcu config from your account settings, import it, and every screenshot or clipboard capture uploads to your domain with a short link copied automatically. Uploads accept any file type, organized with folders and tags, with token-protected uploading, optional password protection, view-limited auto-deletion, image compression, metadata stripping, automatic video thumbnails, and chunked/partial uploads for large files. File URLs come in configurable formats - UUIDs, dates, random alphanumerics, original names, even zero-width spaces. A built-in URL shortener adds vanity slugs, passwords, view caps, and custom domains. Discord embeds are first-class: customize OG metadata titles, descriptions, and colors so links unfurl exactly how you want, and fire fully customizable Discord or HTTP webhooks on each upload. Authentication is serious: OAuth2 (Discord, GitHub, Google, OIDC), TOTP two-factor, and passkeys, with invite-based registration and per-user quotas for shared instances. Storage targets local disk or any S3-compatible backend, a full REST API automates everything, and custom themes plus a PWA round out the experience.

Deploy
Thumbor screenshot thumbnail

Thumbor

Born at Brazilian media giant Globo.com, Thumbor answers imaging CDNs like Imgix and Cloudinary with an HTTP service where every image variant is just a URL. Ask for /300x200/smart/your-image.jpg and Thumbor fetches the original, crops and resizes on demand, and caches the result - one source file, unlimited renditions, no batch pre-generation pipeline. The "smart" in the URL is the signature feature: OpenCV-based face detection finds people in the frame and crops around them (no more thumbnails with severed heads), and when no faces exist, feature detection finds visually important corners and computes a weighted center of mass as the focal point. Beyond cropping, a chainable filter pipeline handles brightness, contrast, grayscale, blur, red-eye removal, rounded corners, rotation, watermarks, and format conversion with quality control - applied in order via URL segments. All common image formats work out of the box, and every layer is pluggable: loaders (HTTP, local, S3), storages and result storages (local, S3, Ceph, and community backends), engines, optimizers, filters, and even custom detectors, with the awesome-thumbor list cataloging the ecosystem. URL signing prevents abuse of your processing capacity. Integrations exist for Django, Rails, Node, WordPress, and most frameworks. MIT-licensed, battle- tested for over a decade.

Deploy