Giter VIP home page Giter VIP logo

ydl-ui's Introduction

YDL-UI

Minimalistic, portable and selfhosted Interface for the famous youtube-dl CLI tool.

This project needs a recode.

If you want something added, write it down here: Tasklist

GIF

I made this because most public downloaders either:

  • Have adblock bypasses, coinhive scripts or PRO plans you have to buy,
  • Dont put thumbnails and meta data in the file,
  • Dont support downloading playlists.

youtube-dl supports all this, but all the UIs I found werent really my taste. So I made my own.

Features

  • Make multiple users
  • Log every (successful) download in the log.php
  • configuration variables are all stored in an config.php
  • Download whole channels, playlists, trackstations etc. (And MANY other sites are supported as well for example soundcloud)
  • Writes artists and Thumbnails to mp3s (when using default config parameter)
  • Deletes all files that are older than specified in the config
  • Completeley database less
  • Pass CLI arguments through the Interface example (dont worry its escaped :D)
  • Responsive design to use it on your phone!

Idea of this Project

This downloader is meant to be used as a selfhosted and private Service. It was designed with this in mind and DOES not scale well. Its not to be released publicly, as this will probably just flood your Harddrive. It was meant to be shared and used by you and some friends you trust. To explain further, its because of these functionalitys:

  • Files are deleted based on how old they are. Filesize doesnt matter!
  • There is no Download limit
  • Its easy to just spam forms and basically flood your server.

So use with care!

Todo

Before the next big update drops (v1.5) I have following things on my todo list:

  • A fully working progress bar substituded with liveExec() ✔ done
  • Download as .zip
  • More specific file types
  • FE fixes and navbar ✔ done
  • better password hashing ✔ done

Installation

You need:

  • Linux / Unix Webserver with PHP (windows not tested)
  • The command popen and / or exec cant be blacklisted (Apache does this by default IIRC)
  • youtube-dl installed:
    sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
    sudo chmod a+rx /usr/local/bin/youtube-dl
    
  • ffmpeg installed to download mp3 files
        sudo apt install ffmpeg
    
  1. Download the release (PLEASE do download from there. The master branch might contain critical bugs!)
  2. Unzip it and upload to your webdirectory
  3. Make sure to make the owner of the folder to your webservers user (e.g. apache or www-data) and set permissions as 775
  4. navigate to the config.php and configure to your likings. To generate password hashes use the password.php
  5. Default password is "password"

Questions?

make an issue if you have any questions, improvemenets or critic. have fun :)

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.