Hyde Downloader
A premium Windows desktop application for downloading media from YouTube, TikTok, Instagram, Twitter/X, and 1000+ sites privately, asynchronously, and with zero configuration.
Important Project Status Notice
Warning: This repo is not being maintained by me at all. No new version will ever come in this project; this project is closed forever from my side. The download provided below is the final working version. If any developer wants to maintain this small project, I am happy to share all the resources they need from my side. I will also give them other code that I have saved for this project.
I have also made a website for this same project, but I don't want to bear the cost of AWS servers for this project, so I am not deploying it. If anyone wants to work on this project, you can change anything you want to change—feel free to contact me.
Overview
Hyde Downloader is a versatile and modern desktop application designed for downloading media from popular platforms like YouTube, TikTok, Instagram, Twitter/X, and Facebook.
Built from the ground up with Python 3.10+ and PySide6 (Qt for Python), it features a glassmorphism-inspired UI with smooth micro-animations. By delegating all heavy tasks to asynchronous background operations, the application remains fast and responsive on any Windows system, even under massive download queues.
Key Features
Multi-Platform Support
Download high-quality videos and audio presets from YouTube, TikTok, Instagram, Twitter/X, Facebook, and hundreds of other websites supported by the powerful yt-dlp core.
Modern UI
Featuring a sleek dark-themed visual setup with semi-transparent elements, graphics blur effects, custom hover responses, and smooth micro-animations.
Asynchronous Operations
A dual QThread multi-threading architecture guarantees that UI operations remain fluid during heavy metadata fetching and multi-stream media downloads.
Format & Quality Selection
Choose between automated quality presets or use the advanced format selector to target precise resolutions, specific audio/video codecs, and bitrates.
Batch Downloading
Add multiple URLs at once by pasting a multi-line list directly into the app or loading a plain text (.txt) file containing video URLs.
Mini-Mode
Quickly drop URLs and track speed with a compact, minimal, floating window that stays pinned on top of other desktop windows.
Download Queue
Easily line up multiple downloads without interruption. The app processes downloads sequentially while you continue browsing for links.
History Tracking
Features a dedicated download history panel with searchable fields to locate, copy, or reopen previous download links and local folders.
Under The Hood & Architecture
01 PySide6 UI Architecture
The desktop client leverages PySide6 widgets utilizing semi-transparent background sheets, stylesheet gradients, custom graphics shadows, and QGraphicsBlurEffect. This results in a Windows native layout resembling modern acrylic/Mica themes.
02 Asynchronous QThread Workers
To avoid freezing Qt UI loop thread during heavy network processing:
FetchInfoWorker(QThread): Runs non-blocking metadata requests viayt-dlp'sextract_infowithout initiating media download, retrieving resolutions and caching thumbnails.DownloadWorker(QThread): Executes parallel or sequential file down streams, piping real-time speed, bytes downloaded, percent completion, and ETA variables back to the UI via Qt signals.
03 Zero-Configuration FFmpeg Integration
High-quality stream merging (e.g. 1080p+ video and high bitrate audio streams) requires the FFmpeg framework. To ensure a seamless installation, Hyde Downloader integrates imageio-ffmpeg, which downloads and configures a localized FFmpeg executable dynamically upon initial import.
04 Dynamic Bundling Context (`sys.frozen`)
The application dynamically routes system path contexts by checking getattr(sys, 'frozen', False). This ensures configuration databases (downloads_history.json, hyde_settings.json) compile cleanly inside the parent folder, preventing PyInstaller from extracting them to temporary directories (_MEIPASS) which get wiped upon exit.
How To Use
-
1
Paste URL
Launch the application and paste your media link (YouTube, TikTok, Twitter/X, etc.) directly into the Media URL input box.
-
2
Fetch Metadata
Click Fetch Info. The app queries the servers and lists resolutions, video thumbnail, and description details.
-
3
Select Format & Download
Select Audio or Video type, select your target output quality format, customize the destination path, and click Download to begin.
Developer Guide & Compilation
Since the project is now unmaintained, developers are highly encouraged to fork, modify, and manage this repository. Follow the guides below to run the project from source or compile the final binary.
Running from Source
# 1. Clone the repository
git clone https://github.com/Tirth1107/Hyde-Downloader.git
cd Hyde-Downloader
# 2. Install PySide6 and essential dependencies
pip install -r requirements.txt
# 3. Launch main interface
python main.py
Building the Executable Binary
You can compile the client code into a single, standalone Windows .exe file using PyInstaller:
pip install pyinstaller
pyinstaller --noconsole --windowed --onefile --name "HydeDownloader" main.py
Note: The built executable will be generated inside the newly created /dist folder.