The Universal Media Automation & Multi-Platform Feed Downloader
Transform your machine into a smart, silent personal media hub with zero duplicate downloads.
Features • Supported Platforms • Visual Tour • Architecture • Installation • Desktop GUI • Automation
Ytdaily is a high-performance, interactive media automation engine and downloader built for creators, archivists, and enthusiasts. It quietly monitors your favorite content feeds, channels, and playlists, automatically synchronizing newly published media in crystal-clear quality up to 4K, scrubbing sponsors, extracting high-fidelity audio (320kbps MP3), and maintaining a state-based database so you never download duplicates.
Whether you prefer a gorgeous PySide6 desktop GUI (themed with Catppuccin Mocha) or a lightning-fast Rich Terminal UI (TUI), Ytdaily gives you seamless control over single downloads, batch collections, and continuous 24/7 background automation.
Ytdaily features universal video and audio extraction powered by yt-dlp:
| Platform | Streams & Feeds | Video Formats | Audio Only | SponsorBlock |
|---|---|---|---|---|
| YouTube | Channels, Playlists, Shorts, URLs | Up to 4K (2160p) | 320 kbps MP3 | ✅ Built-in |
| TikTok | User Profiles, Video Links | Best progressive MP4 | 320 kbps MP3 | N/A |
| Reels, Stories, Video Posts | Best progressive MP4 | 320 kbps MP3 | N/A | |
| Twitter / X | Status Clips, Media Tweets | Best progressive MP4 | 320 kbps MP3 | N/A |
| Watch, Reels, Page Videos | High Definition MP4 | 320 kbps MP3 | N/A | |
| Web Video | Direct URLs & 1,000+ Providers | Adaptive Streams & MP4 | 320 kbps MP3 | N/A |
- ⚡ Multi-Threaded Parallel Downloads: Download multiple streams simultaneously with intelligent bandwidth distribution.
- 🎯 Configurable Quality: Select resolutions from 360p to 4K (2160p) with automatic format fallbacks.
- 🛡️ SponsorBlock Scrubbing: Automatically cuts sponsors, intro cards, interaction reminders, and filler segments from supported video feeds.
- 🍪 Seamless Browser Authentication: Auto-detects session cookies from Brave, Chrome, Chromium, Firefox, Edge, Opera, or Vivaldi.
- 📻 Podcast Automation: Automatically converts monitored audio feeds into pristine 320kbps MP3s with embedded album art.
- 🧠 Smart Gap Detection: JSON-backed state tracking keeps an exact history of every video encountered to ensure zero duplicate downloads.
- 🧹 Self-Cleaning Retention: Configurable auto-cleanup automatically purges files older than your retention policy (default: 60 days).
- 🎨 Dual Interface: Switch effortlessly between the Catppuccin Mocha PySide6 desktop application and the rich command-line TUI.
The desktop app comes loaded with a Catppuccin Mocha dark theme (switchable from five built-in palettes in Settings), complete with searchable history, playlist entry selectors, and background workers.
| Dashboard | Source Tracking |
|---|---|
![]() |
![]() |
| One-Off Downloads (MP4 / MP3) | Searchable History |
|---|---|
![]() |
![]() |
| Playlist Selective Picker | Themes & Preferences |
|---|---|
![]() |
![]() |
| Main Menu | Statistics Dashboard |
|---|---|
| Automated Configuration Scan | Live Gap Detection |
|---|---|
![]() |
![]() |
| Parallel Download Progress | Detailed Media Info |
|---|---|
![]() |
![]() |
Ytdaily operates on a Silent Automation philosophy:
[ Scheduled Trigger / GUI ] ───► [ Intelligent Scanner ] ───► [ Gap Signature Match ]
│
[ Download Complete ] ◄─── [ SponsorBlock / Subtitles ] ◄─── [ Multi-Threaded Engine ]
- Intelligent Monitor: Scans your configured creators, channels, and playlists, querying metadata using lightweight flat-playlist requests.
- Signature Comparison: Checks video IDs against your local state database (
~/.local/share/Ytdaily/channel_history.json) to isolate new uploads. - Parallel Processing: Dispatches download tasks through a managed
ThreadPoolExecutorwith real-time speed, progress, and ETA reporting. - Post-Processing & Scrubbing: Automatically embeds chapters and subtitles, removes sponsor segments, and standardizes container formats.
The automated installer checks dependencies, isolates Python environments (PEP 668 compliant), sets up directories, injects shell aliases, and registers the systemd service.
git clone https://github.com/BikramGole/Ytdaily.git
cd Ytdaily
chmod +x install.sh
./install.sh- Installs
yt-dlp,ffmpeg, andpython-richusing your distribution's native package manager. - Initializes workspace directories in
~/.local/share/Ytdaily/. - Injects
ytdailyandytdaily-guialiases intobash,zsh, orfish. - Installs desktop menu entries and scalable application icons.
- Enables the optional daily Systemd Background Service.
After installation on Linux, Ytdaily can run as a silent background service:
- Schedule: Executes once every 24 hours.
- Boot Safety: Automatically waits 5 minutes after system startup for stable network connectivity.
- Resource Priority: Operates with
Nice=19andIOSchedulingClass=idleto ensure your system never stutters during work or gaming.
Manage the automation service at any time:
# Check status
systemctl --user status Ytdaily.service
# View live service logs
journalctl --user -u Ytdaily.service -f- Install Python 3.9+ (check "Add Python to PATH").
- Install FFmpeg and ensure
ffmpeg.exeis in your systemPATH. - Clone this repository and run the setup script:
git clone https://github.com/BikramGole/Ytdaily.git cd Ytdaily install_windows.bat - Launch the desktop GUI:
py -m ytdaily.main --gui
Tip
To compile a standalone, single-file Windows executable, execute:
powershell -ExecutionPolicy Bypass -File scripts\build_windows.ps1Ytdaily stores its configuration in config.json inside your application directory. You can edit settings directly in the TUI or GUI Settings panel:
| Setting | Default | Description |
|---|---|---|
max_resolution |
720 |
Target maximum video resolution (360, 480, 720, 1080, 1440, 2160) |
max_parallel_downloads |
3 |
Number of simultaneous concurrent download streams |
cleanup_days |
60 |
Days to keep videos before automatic cleanup |
filter_shorts |
true |
Skip vertical shorts (< 60 seconds) during automatic feed scans |
browser |
auto |
Browser to extract authentication cookies from (chrome, firefox, brave, edge, etc.) |
Distributed under the MIT License. See LICENSE for more information.











