A minimalist GUI frontend for the youtube-dl. Takes up less than 4 KB.

Overview

📥 libre-DL

A minimalist GUI wrapper for youtube-dl. Written in python. Total size less than 4 KB. Contributions welcome. You don't need youtube-dl preinstalled in order to use this.

Image

Installation:

1. Download the 'libre-DL.py' file for your operating system.
  1. Make sure you have the package 'tk' (Tkinter) installed. It comes preinstalled with most installations of Python but you can install it like this-(https://tkdocs.com/tutorial/install.html).

  2. Run 'python3 /Path/To/libre-dl.py'

What and Why?

Everybody at some point feels the need to download a video, and currently there are three main options. Using a suspicious looking website to download the videos (which not everyone is comfortable with), installing some proprietary extension and letting unverifiable code run in your browser, or using youtube-dl (https://youtube-dl.org),

youtube-dl is by far the best option, but it doesn't have very much adoption outside certain communities, and I believe the main reason for this is because it operates in a command line interface. This could scare away some users.

While there are other projects like this [mainly youtube-dl-gui], they haven't been updated to reflect the new capabilities of youtube-dl.

So I built this graphical interface, that is incredibly simple and minimalistic. It has the core options one would need, and more advanced options are being added to it soon.

Philosophy

Quoting the GNU Project;

"Free software means that the software's users have freedom. (The issue is not about price.) ...

... Specifically, free software means users have the four essential freedoms: (0) to run the program, (1) to study and change the program in source code form, (2) to redistribute exact copies, and (3) to distribute modified versions.

Software differs from material objects—such as chairs, sandwiches, and gasoline—in that it can be copied and changed much more easily. These facilities are why software is useful; we believe a program's users should be free to take advantage of them, not solely its developer."

What they said.

About code contributions

ALL, and I repeat ALL, contributions are welcome. If you know how to code, perhaps you could make the code more efficient, fix a bug, develop new logic for the script. If you don't know how to code, maybe you could tell others about this, maybe you could make art for our cover image, or maybe you could just use it.

Even if it's a very insignificant one, I welcome and appreciate all contributions.

Future objectives

There are 3 main objectives for this project;

  1. To add options for a slow connection, downloading subtitles, and a persistent record of downloaded videos.

  2. To get this script into the main software repositiories, specifically :- homebrew, apt, pip, and the aur.

  3. To get over 100 stars on GitHub. I truly see a need for this piece of software, and I want people to know about it.

That's all.

Bye!
You might also like...
Launched in 2018 Actively developed and supported. Supports tkinter, Qt, WxPython, Remi (in browser). Create custom layout GUI's simply.  Python 2.7 & 3 Support. 200+ Demo programs & Cookbook for rapid start. Extensive documentation.  Examples using Machine Learning(GUI, OpenCV Integration,  Chatterbot), Floating Desktop Widgets, Matplotlib + Pyplot integration, add GUI to command line scripts, PDF & Image Viewer. For both beginning and advanced programmers .
A GUI frontend developed in Python3 for simple admin tasks on MySQL-Server running on the localhost

A GUI frontend developed in Python3 for simple admin tasks on MySQL-Server running on the localhost. Developed for my CS School Project.

A small manager/GUI Frontend for QEMU written in Python
A small manager/GUI Frontend for QEMU written in Python

qemu-manager A small manager/GUI Frontend for QEMU written in Python Requirements You'll need to have the following tools installed to run this: QEMU

A GUI frontend for the Kamyroll-API using Python and PySide6
A GUI frontend for the Kamyroll-API using Python and PySide6

Kamyroll-GUI A GUI frontend for the Kamyroll-API using Python and PySide6 Usage When starting the application you will be presented with a list and so

Takes a video as an input and creates a video which is suitable to upload on Youtube Shorts and Tik Tok (1080x1920 resolution).

Shorts-Tik-Tok-Creator Takes a video as an input and creates a video which is suitable to upload on Youtube Shorts and Tik Tok (1080x1920 resolution).

This is a GUI for scrapping PDFs with the help of optical character recognition making easier than ever to scrape PDFs.

pdf-scraper-with-ocr With this tool I am aiming to facilitate the work of those who need to scrape PDFs either by hand or using tools that doesn't imp

The no-nonsense, minimalist REST and app backend framework for Python developers, with a focus on reliability, correctness, and performance at scale.
The no-nonsense, minimalist REST and app backend framework for Python developers, with a focus on reliability, correctness, and performance at scale.

The Falcon Web Framework Falcon is a reliable, high-performance Python web framework for building large-scale app backends and microservices. It encou

A minimalist file manager for those who want to use Linux mobile devices.
A minimalist file manager for those who want to use Linux mobile devices.

Portfolio A minimalist file manager for those who want to use Linux mobile devices. Usage Tap to activate and press to select, to browse, open, copy,

The no-nonsense, minimalist REST and app backend framework for Python developers, with a focus on reliability, correctness, and performance at scale.
The no-nonsense, minimalist REST and app backend framework for Python developers, with a focus on reliability, correctness, and performance at scale.

The Falcon Web Framework Falcon is a reliable, high-performance Python web framework for building large-scale app backends and microservices. It encou

An assignment on creating a minimalist neural network toolkit for CS11-747

minnn by Graham Neubig, Zhisong Zhang, and Divyansh Kaushik This is an exercise in developing a minimalist neural network toolkit for NLP, part of Car

A minimalist production ready plugin system

pluggy - A minimalist production ready plugin system This is the core framework used by the pytest, tox, and devpi projects. Please read the docs to l

:rocket: A minimalist comic reader
:rocket: A minimalist comic reader

Pynocchio A minimalist comic reader Features | Installation | Contributing | Credits This screenshots contains a page of the webcomic Pepper&Carrot by

Minimalist BERT implementation assignment for CS11-747

minbert Assignment by Zhengbao Jiang, Shuyan Zhou, and Ritam Dutt This is an exercise in developing a minimalist version of BERT, part of Carnegie Mel

Python Eacc is a minimalist but flexible Lexer/Parser tool in Python.

Python Eacc is a parsing tool it implements a flexible lexer and a straightforward approach to analyze documents.

ticktock is a minimalist library to view Python time performance of Python code.

ticktock is a minimalist library to view Python time performance of Python code.

twtxt is a decentralised, minimalist microblogging service for hackers.
twtxt is a decentralised, minimalist microblogging service for hackers.

twtxt twtxt is a decentralised, minimalist microblogging service for hackers. So you want to get some thoughts out on the internet in a convenient and

A minimalist Vim plugin manager.
A minimalist Vim plugin manager.

A minimalist Vim plugin manager. Pros. Easy to set up: Single file. No boilerplate code required. Easy to use: Concise, intuitive syntax Super-fast pa

A minimalist starknet amm adapted from StarkWare's amm.

viscus • A minimalist starknet amm adapted from StarkWare's amm. Directory Structure contracts

Meaningful and minimalist release notes for developers

Managing manual release notes is hard. Therefore, everyone tends to generate release notes from commit messages. But, you won't get a meaningful release note at the end.

Comments
  • Can not find out Tkinter on Manjaro Linux

    Can not find out Tkinter on Manjaro Linux

    Running the file, I get this response:

    $ python3 libre-DL-unix.py 
    Traceback (most recent call last):
      File "/home/porru/Mahaigaina/libre-DL-unix.py", line 1, in <module>
        from tkinter import *
      File "/usr/lib/python3.9/tkinter/__init__.py", line 37, in <module>
        import _tkinter # If this fails your Python may not be configured for Tk
    ImportError: libtk8.6.so: cannot open shared object file: No such file or directory
    

    I assume that: or I have Tkinter for Python not installed, or it is not well configured.

    Do you know what should I do to run the file?

    opened by Porrumentzio 3
  • If output fulder of format are not selected UI crashes

    If output fulder of format are not selected UI crashes

    Here is the error when not selecting a folder:

    Exception in Tkinter callback
    Traceback (most recent call last):
      File "/usr/lib/python3.9/tkinter/__init__.py", line 1892, in __call__
        return self.func(*args)
      File "/tmp/libre-DL/./libre-DL-unix.py", line 26, in <lambda>
        downloadButton = Button(root, text="Next", command=lambda: confirm_window())
      File "/tmp/libre-DL/./libre-DL-unix.py", line 61, in confirm_window
        downloadLocationCon = Label(sub_window, text="Download location: " + folder_selected).pack()
    NameError: name 'folder_selected' is not defined
    
    opened by guysoft 0
  • New features- Please suggest

    New features- Please suggest

    I've implemented all the core feature I could think of. I have a few more ideas, but I don't know if they're preferred by the community. Please reply to this thread with a few features you would like to see implemented in libre-DL. Much appreciated.

    opened by sudo-daemon 0
Owner
null
Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.

Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.

Taine Zhao 56 Dec 14, 2022
Deploy a ML inference service on a budget in less than 10 lines of code.

BudgetML is perfect for practitioners who would like to quickly deploy their models to an endpoint, but not waste a lot of time, money, and effort trying to figure out how to do this end-to-end.

null 1.3k Dec 25, 2022
An Indexer that works out-of-the-box when you have less than 100K stored Documents

U100KIndexer An Indexer that works out-of-the-box when you have less than 100K stored Documents. U100K means under 100K. At 100K stored Documents with

Jina AI 7 Mar 15, 2022
Create or join a private chatroom without any third-party middlemen in less than 30 seconds, available through an AES encrypted password protected link.

PY-CHAT Create or join a private chatroom without any third-party middlemen in less than 30 seconds, available through an AES encrypted password prote

null 1 Nov 24, 2021
Run CodeServer on Google Colab using Inlets in less than 60 secs using your own domain.

Inlets Colab Run CodeServer on Colab using Inlets in less than 60 secs using your own domain. Features Optimized for Inlets/InletsPro Use your own Cus

null 2 Dec 30, 2021
List Less Than Ten with python

List Less Than Ten with python

PyLaboratory 0 Feb 7, 2022
JAKYM, Just Another Konsole YouTube-Music. A command line based Youtube music player written in Python with spotify and youtube playlist support

Just Another Konsole YouTube-Music Overview I wanted to create this application so that I could use the command line to play music easily. I often pla

Mayank Jha 73 Jan 1, 2023
Much faster than SORT(Simple Online and Realtime Tracking), a little worse than SORT

QSORT QSORT(Quick + Simple Online and Realtime Tracking) is a simple online and realtime tracking algorithm for 2D multiple object tracking in video s

Yonghye Kwon 8 Jul 27, 2022
Youtube Downloader is a Graphic User Interface(GUI) that lets users download a Youtube Video or Audio through a URL

Youtube Downloader This Python and Tkinter based GUI allows users to directly download the Best Resolution Videos and Audios from Youtube. Pa-fy Insta

Samarth Kumar 2 Jun 25, 2022
lo2: Simple youtube-dl web frontend

Simple youtube-dl web frontend

Denis Volk 22 Jun 3, 2022