A modern YouTube video/audio downloader web application with theme support, preview functionality, and download management.
- ๐ Dark/Light theme toggle
- ๐ฌ Video/Audio preview generation
- โฏ๏ธ Pause/Resume downloads
- ๐ฅ Download history management
- ๐ Secure download handling
- ๐ Real-time download statistics
- ๐ Network speed monitoring
- โฑ๏ธ Estimated time remaining
- ๐ Progress visualization
- ๐จ Modern responsive design
- ๐ฑ Mobile-optimized layout
- ๐๏ธ Thumbnail previews
- ๐ Theme customization
After pasting the YouTube URL and clicking the "Analyze Video" button, the system will process the video details.
Various video formats are available for selection, allowing you to choose the one that best suits your needs.
Different audio formats are available, allowing you to select the one that best fits your preferences.
Once the download starts, you can monitor the progress bar, real-time network speed, and estimated download time. Additionally, you can pause or resume the download using the pause/resume button or cancel it with the cancel button.
After the download is complete, a message will appear confirming that the download has finished successfully.
This interface features a dark mode and includes a "Download History" button, allowing you to view your recently downloaded videos.
- Python 3.8+
- FFmpeg (installation instructions below)
- Node.js (for optional frontend build)
Clone the repository:
git clone https://github.com/Mrtracker-new/YT-Downloader.git
cd YT-Downloader
pip install -r requirements.txt
sudo apt install ffmpeg
choco install ffmpeg
brew install ffmpeg
mkdir -p previews static/images
python app.py
Visit http://localhost:5000 in your browser to use the application!
Environment variables (optional):
DOWNLOAD_DIR=/path/to/downloads
PREVIEW_DIR=/path/to/previews
CUSTOM_FFMPEG_PATH=/path/to/ffmpeg
-
Paste a YouTube URL in the input field
-
Click "Analyze Video"
-
Choose video/audio quality
-
Start download
-
Manage downloads through the history panel
Backend:
-
Python 3
-
Flask
-
yt-dlp
-
FFmpeg
Frontend:
-
Modern JavaScript (ES6+)
-
CSS3 with CSS Variables
-
Font Awesome icons
-
Responsive design
Q: Why am I getting "FFmpeg not found" errors? A: Ensure FFmpeg is installed and in your system PATH. See installation instructions.
Q: Where are downloaded files saved? A: Files are saved to your system's Downloads folder by default.
Q: Can I download age-restricted content? A: The application follows YouTube's terms of service. Some content may not be downloadable.
Contributions are welcome! Please follow these steps:
-
Fork the project
-
Create your feature branch (git checkout -b feature/AmazingFeature)
-
Commit your changes (git commit -m 'Add some AmazingFeature')
-
Push to the branch (git push origin feature/AmazingFeature)
-
Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Rolan Lobo - @RolanLobo4 - [email protected]
Project Link: https://github.com/Mrtracker-new/YT-Downloader