Back to projects

GUI-DLP

Sole DeveloperView Repository

Overview

GUI-DLP is app I made so I do not have to memorize yt-dlp's commands. I tend to download many youtube videos and online downloaders full of annoying ads. yt-dlp was a very good alternative save from the fact that I have to know the commands. With GUI-DLP videos can be downloaded by just pasting a YouTube URL. GUI-DLP also allows users to customize settings such as Video Quality and File Extension.

Technologies Used

  • Nextron (Next.js + Electron)
  • TailwindCSS
  • shadcn

Challenges

As this is my first go with Electron and Node.js one of the struggles is trying a new dev environment. But aside from that, I initially wanted to use yt-dlp's python API but ended up just relying on Node's child_processes to spawn CLI instances of yt-dlp instead because it is less complex and I wouldn't have to bundle a python runtime with the app.

Future Improvements

I am currently looking into adding:

  • Pause/cancel downloads
  • Trimming videos before download
  • Improved batch download concurrency (currently spawns child processes for every video in the batch)
  • More customizable settings for videos (metadata, thumbnails, captions, etc)

Repository