GithubHelp home page GithubHelp logo

fmitico / libdrive Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 236.0 961 KB

libDrive is a media library manager, similar to Plex, that organizes Google Drive folders and offers an intuitive interface to explore them

License: MIT License

Shell 100.00%

libdrive's Introduction

What is this repo?

libDrive is a media library manager, similar to Plex, that organizes Google Drive folders and offers an intuitive interface to explore them

This repositry (https://github.com/libDrive/libDrive) only serves to display the libDrive project. No source code is displayed on this repositry.

Source code:

Features supported

  • Automatically retreives movie and TV show metadata based on file name
  • Movie/TV show synopsis, release date, posters etc. are displayed
  • Fast streaming speeds
  • User management, to allow multiple accounts
  • Search feature to find specific movies/TV shows
  • Admin panel UI

To do list

  • Add transcoding on server side
  • Make backend multithreaded
  • Stream videos directly to client rather than through server
  • Add custom video player able to play complexly encoded videos on desktop app

Installation

Client side

Use this if a server has already been set up (you have the URL of the libDrive server)

  • Windows: To install libDrive download the file titled libDrive_Desktop_win.exe from here
  • Linux: To install libDrive download the latest file titled libDrive_Desktop_linux.snap from here

Server side

Prerequisites

  • A Google Developers Console API client credentials
    • To make one go to this link
    • Then click the Enable the Drive API button
    • Name the project anything you want, then click Next
    • Wait for the page titled Configure your OAuth client to show
    • From the dropdown menu, select Web Server
    • Then under the Authorized redirect URIs field, put the following URL: https://libdrive-config.netlify.app
    • Keep note of the client_id and client_secret
  • A TMDB API key
  • Python 3 (this isn't needed for Heroku deployment)

Setup

The easiest method is deploying to Heroku, just click the button below and fill in the LIBDRIVE_CONFIG field with the config

To generate the config, go here and fill in the fields

Deploy

If you would like to host libDrive some place else (such as a personal computer or server), do the following:

  • First make sure you have all the prerequisites
  • Now download the latest server version from here. The file name should look like this: libDrive_Server.zip
  • Extract the downloaded zip file then open a termninal in the folder
  • In the termninal, run pip install -r requirements.txt
  • Next you need to generate a config
  • To generate the config, go here and fill in the fields
  • Set the config as the environment variable LIBDRIVE_CONGIG
  • Now your server is ready, to start it run python main.py
  • This is not a production build and will only work locally. To create a production build consider using a WSGI such as Gunicorn (if you're on Windows Gunicorn will not work) and port forwarding

Screenshots

home video video info tv tv season settings footer

libdrive's People

Contributors

eliasbenb avatar

Stargazers

 avatar  avatar  avatar

Watchers

 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.