Skip to content

Joed1986/plex-missing

Repository files navigation

📺 Plex Missing

A self-hosted web app that scans your Plex libraries and shows you exactly what's missing — which TV episodes you don't have yet, and which shows or movies are missing the audio/subtitle languages you care about.

If you keep a big Plex library, you've probably wondered "am I actually missing episodes of this show?" or "which of my movies don't have English audio?" Plex doesn't answer those questions on its own. This does — at a glance, across your whole library.

Screenshot of the Plex Missing dashboard showing a grid of shows with missing-episode counts

License: MIT Python Buy Me a Coffee


✨ What it does

  • TV gap dashboard. Point it at a Plex TV library and it checks every series against TheTVDB, then shows each show with a clear "COMPLETE" or "N MISSING" badge. Sort by most-missing, filter to only shows with gaps, and click any show to see exactly which episodes are missing, season by season.
  • Language gaps tab. Scan TV or movie libraries for files that don't match your language rules — e.g. "flag anything that doesn't have an English audio track," or "find episodes that only have Japanese audio." Great for cleaning up mismatched or foreign-only files.
  • One place to act. From a show's detail page you can (optionally) kick off a Sonarr search, search the Nyaa index, or send a magnet to qBittorrent — without leaving the app.
  • Password-protected. The whole UI sits behind a simple login so it's not wide open on your network.
  • Fast background scans that keep running even if you close the tab, with live progress.

🧩 What you need (required vs. optional)

🔴 Required — the core app needs these

  • Python 3.8+ (download).
  • A Plex Media Server you control, plus its token (how to find it).
  • A free TheTVDB API key (get one here) — this powers the TV missing-episode detection. Without it, the TV dashboard can't tell what episodes should exist. (The Languages tab works without TheTVDB.)

🟢 Optional — unlock extra buttons

  • Sonarr — if you run it, add its URL + API key and the "Sonarr Get" buttons will trigger episode/season searches for you. Without it, those buttons simply won't do anything (the rest of the app is unaffected).
  • qBittorrent (with its Web UI enabled) — enables the "Send to qBit" button to hand a magnet link straight to your client. Without it, you can still copy links or download .torrent files manually.
  • Nyaa — the anime index search is built in and needs no key; it just won't be useful if you don't use it.

Everything runs locally on your own machine and talks directly to your own services. No cloud, no third-party accounts beyond the free TheTVDB key.


🚀 Quick start

Mac: download this project (green Code button → Download ZIP), unzip it, double-click install-mac.command (first time: right-click → OpenOpen), edit the new .env file with your details, then double-click start-mac.command and open http://localhost:5090.

Windows: unzip, double-click install-windows.bat, edit the .env file, double-click start-windows.bat, open http://localhost:5090.

Full step-by-step instructions (including Linux and troubleshooting) are in INSTALL.md.


⚙️ Configuration

All settings live in a .env file (the installer creates it from .env.example). The essentials:

AUTH_USERNAME=admin
AUTH_PASSWORD=pick_a_strong_password

PLEX_URL=http://192.168.1.10:32400
PLEX_TOKEN=your_plex_token_here

TVDB_API_KEY=your_tvdb_api_key_here

# Optional integrations — leave blank to disable:
SONARR_API_KEY=
QBIT_PASS=

Your .env stays on your machine and is never uploaded.


🔒 Security notes

This app is meant to run on your own trusted network:

  • It has a login, but it's a single shared username/password — set a strong AUTH_PASSWORD and don't expose the app directly to the public internet. Use a VPN or reverse proxy if you need remote access.
  • To restrict it to only the machine it runs on, set HOST=127.0.0.1 in .env.
  • It skips SSL certificate checks (normal for talking to Plex by local IP) and keeps debug mode off by default.
  • The included .gitignore keeps your .env and any .torrent files out of version control.

⚖️ Responsible use

This is a library-management tool. The optional Sonarr, qBittorrent, and Nyaa features are conveniences for managing content you have the right to obtain. You are responsible for complying with the copyright laws in your jurisdiction and for what you choose to download. Use it for content you own, public-domain material, or anything you're otherwise legally entitled to.


🛠️ Troubleshooting

Common issues (Python not found, login problems, "Scan required," empty results, the Mac security prompt) are covered in INSTALL.md. If something else comes up, open an Issue on the repo.


📄 License

Released under the MIT License — free to use, modify, and share. See LICENSE.


☕ Support

I build and share these tools for free in my spare time. If this one saved you some hassle, you can buy me a coffee — genuinely appreciated, and it helps me keep making things like this. Enjoy! 🙌

About

An app to analyze missing TV show gaps and missing languages within files.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors