A simple, clean web-based YouTube downloader that runs locally on your machine using yt-dlp.
- 🎥 Download YouTube videos in various formats
- 🎵 Extract audio in different qualities
- 📱 Clean, responsive web interface
- 📁 Automatic file organization (audio/video folders)
- 🔄 Built-in yt-dlp updater
- 📊 Real-time download progress
- 🎯 Format filtering (audio/video/best quality)
- 📏 File size information when available
- Save all files in a folder
- Run:
python setup.py - Run:
python youtube_downloader.py - Open http://localhost:5000
- Install requirements:
pip install flask yt-dlp - Install ffmpeg
- Run:
python youtube_downloader.py - Open http://localhost:5000
youtube-downloader/
├── youtube_downloader.py # Main application
├── setup.py # Automatic setup script
└── youtubestuff/ # Downloads (created automatically)
├── audio/ # Audio files
└── video/ # Video files
- Paste URL: Enter a YouTube video URL
- Get Formats: Click to fetch available download formats
- Filter: Use dropdown to filter by audio/video/best quality
- Download: Click download button next to desired format
- Monitor: Watch real-time progress in the status bar
- Python 3.7+
- Internet connection
- ffmpeg
- All downloads are saved locally in the
youtubestufffolder - Audio files go to
youtubestuff/audio - Video files go to
youtubestuff/video - The app automatically creates these folders on first run
- Use the "Update yt-dlp" button to keep the downloader current
- "No formats found": Check if URL is valid YouTube link
- Download fails: Try updating yt-dlp or check internet connection
- Missing formats: Install ffmpeg for full format support
- Port in use: Change port in app.py if 5000 is occupied
Built by kc-codes42
This application is designed for local use only. Do not deploy it to public servers or the internet.