Simple. Fast. Powerful YouTube Downloader.
🚀 SourceForge • ✨ Features • 📦 Getting Started • 🤝 Contributing
PyTube Downloader is a modern, user-friendly application that makes downloading YouTube videos and playlists effortless. With support for multiple formats, quality levels (144p–8K), and simultaneous downloads, it gives you complete control over your YouTube media experience.
-
🎞️ Playlist Downloading — Download entire playlists from a single URL.
-
🎚️ Format & Quality Selection — Choose from multiple formats (MP4, MP3, etc.) and qualities (144p–8K).
-
📊 Progress Tracking — Monitor downloads directly in the app.
-
⚡ Simultaneous Downloads — Save time with multiple concurrent downloads.
-
⚙️ Automatic Downloads with Predefined Settings — Set your preferred video quality, audio format, and download location once — PyTube will handle the rest.
-
🗂️ Dynamic Folder Organization — Automatically sorts files by playlist, quality, or type.
-
🌐 Multi-Language Support — Enjoy the app in your language:
Language Contributor English - 中文 (Chinese) 
සිංහල (Sinhala) 
தமிழ் (Tamil) 
Русский (Russian) 
💡 Help us improve existing translations or add new ones.
-
🖥️ Cross-Platform Support — Runs on Windows, Linux, and macOS.
-
📝 Structured Logging — Rotating file logs for easier debugging.
-
🔄 GitHub Actions CI/CD — Automated linting (
ruff), formatting, type checking (mypy), and testing (pytest) on every push and PR. -
🛡️ Improved Error Handling & Performance — Better resilience and reduced CPU usage via event-driven threading.
-
⌨️ Keyboard Shortcuts — Control the app easily with quick-access shortcut keys.
| Category | Technologies |
|---|---|
| Language | Python 3.10+ |
| Libraries | tkinter, customtkinter, pytubefix, pillow, pyautogui, pystray, pyperclip, hPyT (optional), win11toast (optional), ctkchart |
| Dev Tools | ruff, mypy, pytest, pre-commit |
| External Tool | FFmpeg (for video/audio processing) |
| Platform | Windows, Linux, macOS |
git clone https://github.com/Thisal-D/PyTube-Downloader.git
cd PyTube-Downloaderpip install -e .This installs the app and creates the pytube-downloader CLI entry point.
Alternatively, run
python dependencies_installer.py && python dependencies_updater.py.
-
Linux/macOS: FFmpeg is used automatically from your system PATH if available.
-
Windows: Download from FFmpeg.org, extract and copy
ffmpeg.exeinto:PyTube-Downloader/ffmpeg/
Note
Windows-only dependencies (win11toast, hPyT) are optional. The app runs on Linux/macOS without them.
Copy .env.example to .env and edit as needed.
python main.pyOr use the installed entry point:
pytube-downloader- Paste a YouTube video or playlist URL.
- Choose Single Video or Playlist Mode.
- Select your desired format and quality.
- Click Download and track progress in real-time.
- Find your downloaded files in the output folder — ready to enjoy!
See Project Structure Guide for detailed folder and code layout information.
| Screenshots |
|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
We welcome all kinds of contributions — not just code! Whether you're improving the UI, translating, enhancing themes, or helping refine documentation — your input makes PyTube Downloader better for everyone.
- 🧩 Code Improvements: Fix bugs, optimize performance, or suggest new features.
- 🌍 Language Contributions: Help us improve existing translations or add support for new languages.
- 🎨 Theme Contributions: Help us enhance current themes or design brand new ones.
- 🧠 Ideas & Feedback: Share feature suggestions or report issues on GitHub Issues.
- 🧾 Documentation & Guides: Improve readability, structure, or examples in the project documentation.
- Fork the repository.
- Create a new branch for your changes.
- Commit your improvements with clear messages.
- Submit a pull request — we'll review and merge it soon!
See CONTRIBUTING.md for detailed contribution guidelines.
❤️ Every contribution, big or small, is appreciated. Let's make PyTube Downloader even better — together!
Licensed under the MIT License. See the LICENSE file for full details.
This application is intended for personal use only. Please respect YouTube's Terms of Service and content creators' rights when downloading videos.
| Contributor | Profile |
|---|---|
| youyu | |
| Navindu Pahasara | |
| Soorya Suraweera | |
| Fathima Asma | |
| ZLostTK | |
| Sergdryg |
Made with ❤️ by Thisal-D and contributors








