Features
Everything in one place.
Nothing duplicated.
Nexus does not replace Jellyfin, Plex, Calibre, or the rest of your stack — it sits on top and gives you one homepage, one search, one player, one set of stats across everything.
Every type of media,
one place to find it
Movies & TV
Unified video library across Jellyfin and Plex. Browse, play, and pick up where you left off on any device.
Music
Persistent music player that follows you across every page. Queue, playlists, and mini-player overlay while you browse.
Books
Calibre-Web integration over OPDS. Browse, read EPUBs / PDFs in-browser, sync progress across devices.
Games
Your RomM library with platform browsing, cover art, and in-browser emulation via EmulatorJS.
Live TV
Live IPTV / tuner playback with EPG guides. Watch channels inside the same interface as the rest of your library.
Videos
Privacy-respecting YouTube through Invidious, with a proxied transcode pipe that strips tracking before playback.
A player for everything,
not a menu of players
Adaptive HLS
Single player for Jellyfin + Plex with adaptive bitrate, seamless quality switching, and a Rust byte-pipe that strips auth tokens before the browser sees them.
Subtitle intelligence
Bazarr surfaces availability, history, and missing tracks per item. External subtitles inject as WebVTT <track>; burn-in fallback when native fails.
In-browser reader
Full EPUB and PDF reader built in. Reading progress, bookmarks, highlights — all sync to your Calibre-Web library.
In-browser emulation
Launch RomM titles in-browser via EmulatorJS. NES, SNES, Genesis, Game Boy, N64, PSX — no extra client to install.
Features no single service
can do alone
Unified search
One query across every connected service. Match movies, shows, music, books, games in a single result set; filter by type or request what is missing.
Continue anywhere
Resume playback carries across service boundaries. Watched the first half of an episode on Jellyfin? Finish it on Plex — Nexus tracks progress per-item, not per-service.
Recommendations
Personalized suggestions powered by your actual watch history — not an algorithm you do not control. Feeds your homepage and the "For you" rail.
Wrapped + analytics
Yearly recaps across everything you watched, read, and played. Per-device, per-session breakdowns. Your data, hosted on your box.
Built for
more than one user
Per-user accounts
Each user links their own service credentials. Private libraries, private recommendations, private stats. Admin controls for provisioning and approvals.
Media requests
Overseerr + Seerr integration for request-and-approve flows. Users submit, admins approve or deny from a unified queue with status tracking.
Collections & sharing
Share items and collections with friends. Activity feed surfaces what people you follow are watching, reading, playing.
Pending approvals
Admin gate for new accounts when you open Nexus up to friends. Force-password-reset on first login, per-user pause, and forced logout.
Boring, honest
operator experience
Adapter architecture
New services are one file, one line of registry code. Shared contract handles search, browse, negotiate, play, subtitles. Community adapters do not have to modify core.
Docker-native
Multi-arch image (linux/amd64 + linux/arm64) on GHCR. Single-container deployment with an embedded Rust stream-proxy. Run on a Pi, run on a server, run anywhere.
Env-managed config
Everything lives in env vars: encryption key, trusted proxy CIDRs, cache tuning, subtitle caps, rate-limit mode. Twelve-factor friendly.
Built-in bug reporter
Cmd+Shift+B from any page opens a prefilled GitHub issue — URL, browser, build version, and any JS error auto-attached. Opt out with one env var.