Code Monkey home page Code Monkey logo

plex-visualizer's Introduction

Plex Visualizer

A Visulizer to help you discover new media on your Plex Media Server.

Features

  • View and general view of TV Shows and Movies
  • All Bubbbles are sized relative to the amount that thing has been watched
  • Click on any bubble to expand it to get more information or to filter it out
  • Login to be able to filter things you've already watched (so long as its in the plexpy.db)
  • Split up bubbles by Years or Genres
  • Filter bubbles individually, by year or by genre

There are many more features that I want to implement!

TV Show View

Installation

  • Clone the repository
  • Install the requirements in a virtualenv or on your machine
    • pip install -r requirements.txt
  • Place a copy of your plexpy.db in data/
  • Copy the plex_vis.cfg.sample to the same directory (minus the .sample) and fill in the nessicary information
    • SECRET_KEY: A randomly generated key to keep session info safe
    • PLEYPY_KEY: A plexpy API Key
    • PLEXPY_URL: The url to your plexpy instance. Must be accessible by the app but not necessarily by the end user
    • APP_URL: The public URL of the app (so that the frontend can make proxied requests)
    • ADMIN: The Admin user that will be able to run additional functions

From here you can just execute the run_vis.sh script from the same directory to run the app! (Systemd/init.d defintions coming soon!)

Admin Interface

There are multiple endpoints that you can hit as the ADMIN account that lets you run various operations:

  • /regen: Regenerate the cache for anyone who is not logged in. This cache gets generated automatically the first time the server is run but never again after
  • /test: For somereason not all the rating_keys in my database were correct (or the latest?) as such some of the bubbles wouldn't appear properly. Running the /test endpoint will give you an output on the console of both shows and movies that have invalid rating_keys. Navigating to those rating_keys on plexpy will allow you to update the old entries and thus fix them.

Screenshots

The first view you see when you first enter the page. Lets you choose between the TV Shows and Movies on your server First View

You can expand any of the bubbles to get more information about that Show/Movie Expanded View

You can split up the chart by genre to help you narrow down what you want to watch Split Genre

You can also split up by year in case you are feeling an older or newer Show/Movie! Split Year

Issues

There's still a lot that I want to do with this so feel free to open up an Issue and I'll try to get to it!

Contributing

I could use all the help I can get so please feel free to open up a PR if you want to contribute.

There's a lot of clean up and documentation that I still need to do so I won't hold you to any standard but please try to document the functionality you add!

License

This is free software under the GPL v3 open source license. Feel free to do with it what you wish, but any modification must be open sourced. A copy of the license is included.

plex-visualizer's People

Contributors

matkam11 avatar mrsalogo avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.