marquee

marquee

Docker app from TimmyAmant's Repository

Overview

Self-hosted media metadata dashboard - TMDb + Plex/Jellyfin + Sonarr/Radarr. Look up any actor, studio, or franchise, see instantly whether it's already in your Plex or Jellyfin library, being downloaded, or coming soon, and send anything missing straight to Sonarr or Radarr. Built for households: the admin account (created on first visit) connects Plex and/or Jellyfin plus Sonarr/Radarr, and can add accounts for everyone else. Other household members get the full app - Discover, Search, My Library, Favorites, Calendar - but request titles instead of adding them directly, so nothing downloads without the admin's approval. Includes a release calendar, download notifications, and a mobile-friendly UI. This is a single, self-contained container - Postgres runs inside it, there is nothing else to install. Just set a POSTGRES_PASSWORD below and go. First visit after install creates the one-time admin account. Full setup instructions: https://github.com/TimmyAmant/marquee#readme

Marquee

Marquee

CI Latest release Docker pulls MIT license Web, macOS, Windows and iPhone Languages

Marquee is a free and open source, self-hosted app for requesting movies and shows and knowing exactly what you already have. It works with Plex, Jellyfin and Emby even two at once and with Sonarr and Radarr, as many servers as you run, 4K included. Use it in any browser, on your phone, or in the native Mac, Windows and iPhone apps.

Marquee's Discover page

Features

  • Requests with approvals: whole titles, single seasons or 4K, with per-member limits, permissions, a trusted role and a blocklist; approve straight from the notification.
  • Your library, not just a search box: live status on every poster, file quality (4K, HDR, codec, audio) on every title, one Library view across Plex, Jellyfin/Emby, Sonarr and Radarr, duplicates and a disk-space forecast.
  • Everyone signs in their way: local accounts, Plex, Jellyfin/Emby (with Quick Connect) and single sign-on (Authentik, Authelia, Pocket ID, Keycloak, Google…).
  • Notifications that matter: bell, Web Push and app alerts, plus Discord, ntfy, Telegram, Pushover, email, Gotify, Slack, Pushbullet and webhooks, for the household and for each person.
  • Any number of Sonarr and Radarr servers, 4K included, with override rules, a release calendar and "Can't find" alerts.
  • Website, Mac, Windows and iPhone apps, in five languages.

See every feature → docs/features.md

Why Marquee

Marquee Typical request apps
Plex and Jellyfin/Emby at the same time ✅ one server
File quality (4K, HDR, codec, audio) on every title ✅ ❌
One library view across all your servers, with duplicates and a disk-space forecast ✅ ❌
Release calendar ✅ ❌
Fix a wrong match, Search now, monitoring toggle ✅ ❌
Approve or decline from the notification ✅ ❌
"Can't find" alerts after approval ✅ ❌
Native Mac, Windows and iPhone apps ✅ ❌

Getting Started

docker pull timmyamant/marquee:latest

Or search marquee in Unraid's Apps tab. The Getting started guide covers Docker Compose, Unraid, the Mac, Windows and iPhone apps, remote access and development.

Preview

Title page Light theme
A title page with library status and file details The website in its light theme
The Mac app Discover in the Mac app's light theme

Coming from Overseerr, Jellyseerr or Seerr?

Marquee runs happily next to them, so you can try it without switching anything off: point it at the same Plex/Jellyfin/Emby and Sonarr/Radarr, import your household from Plex or Jellyfin, and let people sign in with the accounts they already have.

When you're ready to switch, Settings › General › Coming from Seerr? brings everything over from the running Seerr's API with its admin key: accounts (matched to existing ones by Plex/Jellyfin id, email or username), permissions and request limits, every request with its seasons and 4K flag, problem reports with their comments, and the blocklist. Preview first, run with progress, download a report; run it again later and it only picks up what's new. See docs/migrating-from-seerr.md.

API Documentation

Every install serves its API description at http://<your-server>:3000/api-docs (and /api/v1/openapi.json). The full reference is docs/api-v1.md; dashboards and scripts use admin-issued API keys.

Support

Contributing

Pull requests are welcome. Want Marquee in your language? See docs/translating.md.

Beta. Marquee is young and moves fast. Back up your database before updating, and open an issue if something breaks.

License

MIT

Download Statistics

4,244
Total Downloads

Related apps

Details

Repository
timmyamant/marquee:latest
Last Updated2026-07-28
First Seen2026-07-15

Runtime arguments

Web UI
http://[IP]:[PORT:3000]/
Network
bridge
Shell
bash
Privileged
false

Template configuration

WebUI PortPorttcp

Port Marquee listens on

Target
3000
Default
3000
Value
3000
Postgres DataPathrw

Where Marquee's built-in Postgres database is stored

Target
/var/lib/postgresql/data
Default
/mnt/user/appdata/marquee/postgres-data
Value
/mnt/user/appdata/marquee/postgres-data
LogsPathrw

Where the server's log file (Settings, Logs) is kept, so it survives the container being recreated

Target
/var/log/marquee
Default
/mnt/user/appdata/marquee/logs
Value
/mnt/user/appdata/marquee/logs
POSTGRES_PASSWORDVariable

Password for Marquee's built-in database. Pick any strong password - just remember it, it's not used anywhere outside this container.

AUTH_SECRETVariable

Any long random string. Generate with: openssl rand -base64 32

MASTER_ENCRYPTION_KEYVariable

Base64 32-byte key used to encrypt saved Sonarr/Radarr/Plex/Jellyfin credentials. Generate with: openssl rand -base64 32 -- BACK THIS UP, losing it makes saved credentials undecryptable.

AUTH_TRUST_HOSTVariable

Leave as true for LAN access without a fixed domain

Default
true
Value
true
POSTGRES_USERVariable

Built-in database username - the default is fine for almost everyone

Default
marquee
Value
marquee
POSTGRES_DBVariable

Built-in database name - the default is fine for almost everyone

Default
marquee
Value
marquee
TZVariable

Your time zone, e.g. America/New_York or Europe/London. Scheduled jobs set to run at a time of day (Settings, Jobs) run at that time in this zone.

Default
UTC
Value
UTC
TRUSTED_PROXY_HOPSVariable

How many reverse proxies every request passes through before reaching Marquee (Cloudflare Tunnel or one reverse proxy: 1; tunnel into a reverse proxy: 2). Leave at 0 for LAN access or port forwarding - see the README's 'Behind a proxy' section.

Default
0
Value
0
TMDB_API_KEYVariable

From themoviedb.org/settings/api. Can also be set later from within the app: Settings -> General.

TMDB_ACCESS_TOKENVariable

Alternative to TMDB_API_KEY (TMDb v4 access token) - only need one of the two

TVDB_API_KEYVariable

From thetvdb.com/api-information - used to cross-reference Sonarr's shows to TMDb

TVDB_PINVariable

From thetvdb.com/api-information