Take control of your media by hosting your own YouTube downloader. This tool provides a clean, modern frontend based on Material Design for the powerful youtube-dl, allowing you to save videos and audio directly to your server. Built with Node.js, it offers a reliable and responsive experience for building your personal media archive. The application is packed with features for both casual and power users: * Easy Deployment: Get up and running in minutes with the official Docker image and a simple compose file. * Flexible Downloads: Download single videos, audio-only files, or entire playlists. It also supports downloading Twitch VODs with their chat logs. * Automation Ready: Use the built-in public API to integrate with other services or the handy iOS Shortcut for quick saves on the go. * Polished Library: Automatically embeds thumbnails into audio files for a clean media library experience. * Scalable Backend: For large collections, you can switch from the default JSON database to MongoDB to manage thousands of files without performance degradation. The interface also includes a dark mode for comfortable viewing in any lighting condition.
services:
ytdl_material:
image: tzahi12345/youtubedl-material:latest
environment:
ALLOW_CONFIG_MUTATIONS: 'true'
ytdl_mongodb_connection_string: 'mongodb://ytdl-mongo-db:27017'
ytdl_use_local_db: 'false'
write_ytdl_config: 'true'
restart: always
depends_on:
- ytdl-mongo-db
volumes:
- ./appdata:/app/appdata
- ./audio:/app/audio
- ./video:/app/video
- ./subscriptions:/app/subscriptions
- ./users:/app/users
ports:
- "17442:17442"
ytdl-mongo-db:
image: mongo:4
logging:
driver: "none"
restart: always
volumes:
- ./db:/data/db# No sensitive environment variables are required for the default YoutubeDL-Material setup.
# If you configure external APIs or authentication later, add them here.Auto-fetched about 22 hours ago
Auto-fetched about 22 hours ago