{"id":19416901,"url":"https://github.com/ethanc/perplex","last_synced_at":"2025-04-24T13:33:10.441Z","repository":{"id":44657020,"uuid":"441397315","full_name":"EthanC/Perplex","owner":"EthanC","description":"Discord Rich Presence implementation for Plex.","archived":true,"fork":false,"pushed_at":"2023-08-14T11:32:55.000Z","size":37,"stargazers_count":86,"open_issues_count":3,"forks_count":10,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-13T17:49:32.899Z","etag":null,"topics":["activity","app","discord","episode","media","movie","music","player","plex","presence","python","rich","script","season","server","show","status","themoviedb","tmdb","tv"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EthanC.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"ko_fi":"mxtive"}},"created_at":"2021-12-24T07:23:42.000Z","updated_at":"2024-11-01T08:56:03.000Z","dependencies_parsed_at":"2023-01-23T04:01:17.022Z","dependency_job_id":null,"html_url":"https://github.com/EthanC/Perplex","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanC%2FPerplex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanC%2FPerplex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanC%2FPerplex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EthanC%2FPerplex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EthanC","download_url":"https://codeload.github.com/EthanC/Perplex/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250636249,"owners_count":21463036,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["activity","app","discord","episode","media","movie","music","player","plex","presence","python","rich","script","season","server","show","status","themoviedb","tmdb","tv"],"created_at":"2024-11-10T13:06:10.354Z","updated_at":"2025-04-24T13:33:10.074Z","avatar_url":"https://github.com/EthanC.png","language":"Python","funding_links":["https://ko-fi.com/mxtive"],"categories":[],"sub_categories":[],"readme":"# Perplex\n\nPerplex is a Discord Rich Presence implementation for Plex.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://i.imgur.com/M7tBxzg.png\" draggable=\"false\"\u003e\n\u003c/p\u003e\n\n## Features\n\n-   Modern and beautiful Rich Presence for movies, TV shows, and music.\n-   [The Movie Database (TMDB)](https://www.themoviedb.org/) integration for enhanced media information.\n-   Optional minimal mode for Rich Presence to hide granular information\n-   Lightweight console application that runs in the background.\n-   Support for two-factor authentication (2FA) at login.\n-   Prioritize multiple Plex media servers and users with one configuration.\n\n## Setup\n\nPerplex is built for [Python 3.11](https://www.python.org/) or greater. [TMDB API](https://www.themoviedb.org/settings/api) credentials are required to enable media art and external information.\n\nNote: A Discord desktop client must be connected on the same device that Perplex is running on.\n\n1. Install required dependencies using [Poetry](https://python-poetry.org/): `poetry install`\n2. Rename `config_example.json` to `config.json`, then provide the configurable values.\n3. Start Perplex: `python perplex.py`\n\n**Configurable Values:**\n\n-   `logging`:`severity`: Minimum [Loguru](https://loguru.readthedocs.io/en/stable/api/logger.html) severity level to display in the console (do not modify unless necessary).\n-   `plex`:`username`: Plex username for login.\n-   `plex`:`password`: Plex password for login.\n-   `plex`:`twoFactor`: `true` or `false` toggle for two-factor authentication prompt at login.\n-   `plex`:`servers`: List of Plex media servers, in order of priority.\n-   `plex`:`users`: List of Plex users, in order of priority.\n-   `tmdb`:`enable`: `true` or `false` toggle for enhanced media information in Rich Presence.\n-   `tmdb`:`apiKey`: [TMDB API](https://www.themoviedb.org/settings/api) key (only used if `tmdb` `enable` is `true`).\n-   `discord`:`appId`: Discord application ID (do not modify unless necessary).\n-   `discord`:`minimal`: `true` or `false` toggle for minimal media information in Rich Presence.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanc%2Fperplex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fethanc%2Fperplex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanc%2Fperplex/lists"}