Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoDown

About the Project

GoDown is a lightweight, concurrent desktop application designed to download large playlists from various platforms and convert them into high-quality MP3 files with fully embedded metadata.

Built as a personal project using the Wails v2 framework and Svelte, the application provides a fast, responsive user interface wrapped around highly optimized multi-threaded downloads. It functions as a streamlined, concurrent wrapper for yt-dlp and FFmpeg, allowing users to manage simultaneous workers, customize download paths, and handle automated query retries seamlessly.

Sample

Example

Installation

Core Dependencies

Project Dependencies

git clone https://github.com/harpoonwithaz/GoDown.git
cd GoDown
go mod download
go install github.com/wailsapp/wails/v2/cmd/wails@latest
go get github.com/gocolly/colly
go mod tidy

Linux Webkit

sudo apt update && sudo apt install -y pkg-config libgtk-3-dev libwebkit2gtk-4.1-dev

Building & Running

Windows

wails dev

Linux

wails dev -tags webkit2_41

Config

Name Description Default
download_path Absolute path to where the files will be downloaded default
workers How many downloads will happen simultaneously 3 (Recommended: 3, Max: 5)
retries Amount of retries with new query and length mismatch error 3
debug_mode Prints yt-dlp output to console false

Future features

  • Thumbnail embeding
  • Metadata embeding
  • BPM embeding
  • Download Progress bar
  • Other platforms

Current limitaions

  • Spotify limited to 100 songs per playlist
  • Can't download indiviudal songs

About

A concurrent playlist downloader which can download large playlists from various platforms to mp3s which includes embedded metadata. Uses the Wails and Svelte framework for the GUI.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages