Skip to content

A lightweight tool that syncs your Plex status to Discord. It displays the movie, TV show, music or audiobook you are currently enjoying on your Discord profile with rich metadata and cover art.

License

Notifications You must be signed in to change notification settings

malvinarum/Plex-Rich-Presence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PlexRPC - Advanced Discord Rich Presence for Plex

Version Downloads Platform

Sponsor on GitHub Buy Me A Coffee

PlexRPC is a modern, lightweight, and user-friendly application that syncs your Plex media status to your Discord profile.

Unlike other scripts that require editing complex JSON config files, PlexRPC features a Unified Setup Wizard that handles everything for you—from secure login to custom library settings.

✨ New in v2.3 (coming soon)

The latest update brings major stability improvements and user-requested features:

  • 👻 Privacy Mode: Temporarily pause your Rich Presence directly from the system tray without closing the app. Perfect for when you want some privacy.
  • 🟢 Dynamic Status Icons: The system tray icon now changes color to reflect your status instantly:
    • 🟢 Green: Playing
    • 🔵 Blue: Paused
    • Grey: Privacy Mode (Paused Presence)
    • 🟠 Orange: Idle (No active session)
    • 🔴 Red: Connection Error
  • 🛠️ Robust Reset: The "Reset Config" option has been completely rewritten to prevent freezing.
  • 🧹 Auto-Maintenance & Better logging: Auto-Maintenance & Better Logs: On launch, the app automatically cleans up bloated log files ('app.log') to save space. I've also refined the logging system to cut out the noise while preserving critical debug info.
  • 🆔 Identity Fix: Improved user matching ensures the app grabs the correct session even if your "Friendly Name" differs from your username.
  • 🎵 Enhanced Metadata: Music now correctly displays "by Artist" on the second line and the Album Name in the hover text and 3rd line.

✨ Key Features

  • 🧙‍♂️ Configless Setup: A guided GUI walks you through linking your account, selecting your server, and picking your user profile.
  • ☁️ Cloud Metadata API: Powered by a custom backend to fetch high-quality covers from TMDB (Movies/TV), Google Books (Audiobooks), and Spotify (Music).
  • 🎧 Audiobook Recognition: Smartly detects audiobook libraries to display book covers and author details instead of generic placeholders.
  • 👥 Multi-User Support: Works perfectly with Plex Home / Managed Users. You pick exactly which profile to track (great for shared family servers).
  • 🛡️ Silent & Secure: Runs silently in the System Tray with secure API headers.
  • 🚀 Run on Startup: A true "set and forget" experience. You can now toggle Run on Startup directly from the System Tray menu.
  • ⏯️ Smart Pause Detection: The app now detects when you pause your media. It updates your status text to "(Paused)" and hides the progress bar so your timer doesn't drift.
  • 👀 Dynamic Activity Status: Discord now correctly displays "Watching Plex" for movies/series and "Listening to Plex" for music/audiobooks.
  • 📊 Universal Progress Bar: Added beautiful progress bars for Video content, Music tracks and Audiobooks.

📥 Installation

  1. Download the latest PlexRPC.exe from the Releases Page.
  2. Double-click to run.
  3. Follow the Setup Wizard:
    • Login: A browser window will open. Click "Approve" to link your account securely.
    • Server: Choose which Plex Media Server to track.
    • User: Select your specific user profile.
    • Libraries: (Optional) Check any libraries that contain Audiobooks for enhanced metadata.
  4. Done! The app will minimize to your system tray.
  5. (Optional) Right-click the tray icon and check "Run on Startup" to have it launch automatically with Windows.

App Screenshots

image image image image

Rich Presence Screenshots

TV Series
image
Movies
image
Music
image
Audiobook
image

🛠️ Troubleshooting

"I want to reset my settings"

  • Option 1 (Easiest): Right-click the PlexRPC icon in your System Tray and select Reset Config.
  • Option 2 (Manual): Delete the file: C:\Users\%USERNAME%\AppData\Roaming\PlexRPC\config.json

"It says Idle when I'm playing something"

  • This usually means you selected the wrong User Profile during setup.
  • If your server has "Admin" and "Kids", make sure you select the one you actually watch on.

🧑‍💻 Development

If you want to run from source or build it yourself:

  1. Clone the repo:

    git clone https://github.com/malvinarum/Plex-Rich-Presence.git
    cd Plex-Rich-Presence
  2. Install dependencies:

    pip install -r requirements.txt
  3. Setup backend (If you want to use your own API):

  4. Run locally:

    python main.py
  5. Build .exe (PyInstaller): If you want to build the standalone executable, use the provided spec file:

    pyinstaller PlexRPC.spec

    (Or manually: pyinstaller --noconsole --onefile --icon=assets/icon.ico --name=PlexRPC --add-data "assets;assets" main.py)

📜 License

This project is open-source. Feel free to fork, modify, and distribute.

Disclaimer

PlexRPC is a community-developed, open-source project. It is not affiliated, associated, authorized, endorsed by, or in any way officially connected with Plex, Inc., Discord Inc., or any of their subsidiaries or affiliates.

The names "Plex", "Discord", as well as related names, marks, emblems, and images are registered trademarks of their respective owners. This application is intended for personal, non-commercial use only.

About

A lightweight tool that syncs your Plex status to Discord. It displays the movie, TV show, music or audiobook you are currently enjoying on your Discord profile with rich metadata and cover art.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Languages