A modern GUI video and audio downloader supporting hundreds of sites
β Light/Dark mode
β Supports hundreds of sites including Youtube, Facebook, Instagram, Tiktok, Twitter and so on.
β Advanced options like Range Selection
β Download playlists
β Available on Linux, Windows & macOS
β Fast download speeds
β And of-course no trackers or ads
Traditional way
Download and install the exe or msi file. Exe file lets you choose custom download location, msi file doesn't ask for location. Windows defender may show a popup saying Windows Protected Your PC. Just click on More info and click on Run Anyway
Chocolatey App can be installed from Chocolatey using the following command
choco install ytdownloader
Scoop App can be installed with Scoop using the following command
scoop install https://raw.githubusercontent.com/aandrew-me/ytDownloader/main/ytdownloader.json
Winget (Might be using outdated version)
App can be installed with Winget using the following command
winget install aandrew-me.ytDownloader
Linux has several options available - Flatpak, AppImage, Snap and AUR. Flatpak is recommended. For arm processors, download from flathub.
AppImage format is supported on most Linux distros and has Auto-Update support. It just needs to be executed after downloading. See more about AppImages here.
AppImageLauncher is recommended for integrating AppImages.
The app is available in AUR with the name ytdownloader-gui
. To build with pamac the required command is -
pamac install ytdownloader-gui
Using yay
yay -S ytdownloader-gui
flatpak install flathub io.github.aandrew_me.ytdn
sudo snap install ytdownloader
Since the app is not signed, when you will try to open the app, macOS will not allow you to open it. So you will need to follow some steps to open it.
On macOs 14.5 Sonoma you need to open terminal and add it by hand:
sudo xattr -r -d com.apple.quarantine /Applications/YTDownloader.app
You will also need to have Python 3.8 or greater installed
Translations into other languages would be highly appreciated. If you want to help translating the app to other languages, you can join from here. Open a new issue and that language will be added to Crowdin. Please don't make pull requests with json files, instead use Crowdin.
Name | Status |
---|---|
Arabic | βοΈ |
English | βοΈ |
Simplified Chinese | βοΈ |
Finnish | βοΈ |
French | βοΈ |
German | βοΈ |
Greek | βοΈ |
Hungarian | βοΈ |
Italian | βοΈ |
Japanese | βοΈ |
Persian | βοΈ |
Polish | βοΈ |
Portuguese (Brazil) | βοΈ |
Russian | βοΈ |
Spanish | βοΈ |
Turkish | βοΈ |
Ukrainian | βοΈ |
Vietnamese | βοΈ |
Thanks to nxjosephofficial, LINUX-SAUNA, Proxycon, albanobattistella, TheBlueQuasar, MrQuerter, KotoWhiskas, AndrΓ©, haggen88, XfedeX, Jok3r, TitouanReal, soredake, yoi, HowlingWerewolf, Kum, Mohammed Bakry, Huang Bingfeng and others for helping.
Nodejs (along with npm) needs to be installed.
Required commands to get started.
git clone https://github.com/aandrew-me/ytDownloader.git
cd ytDownloader
npm i
To run with Electron :
npm start
You need to download ffmpeg and put it in the root directory of the project. If you don't need to build for arm processor, you can download ffmpeg by executing any of the files - linux.sh / mac.sh / windows.sh depending on the platform. Otherwise you need to download ffmpeg from here for windows/linux and from here for mac (not tested)
To build for Linux (It will create packages as specified in package.json). The builds are stored in release folder.
npm run linux
To build for Windows
npm run windows
To build for macOS
npm run mac
If you only want to build for one format, you can do
npx electron-builder -l appimage
It will just create a linux appimage build.