Hey everyone!
I just released Potty, my new Python-based command-line tool for downloading and managing music from Spotify & YouTube using yt-dlp.
This project started because I was frustrated with spotify and I wanted to self-host my own music, and it evolved to wanting to better manage my library, embed metadata, and keep track of what I’d already downloaded.
Some tools worked for YouTube but not Spotify. Others didn’t organize my library or let me clean up broken files or schedule automated downloads. So, I decided to build my own solution, and it grew into something much bigger.
🎯 What Potty Does
Interactive CLI menus for downloading, managing, and automating your music library Spotify data integration: use your exported YourLibrary.json to generate tracklists Download by artist & song name or batch-download entire lists YouTube playlist & link support with direct audio extraction Metadata embedding for downloaded tracks (artist, album, artwork, etc.) System resource checks before starting downloads (CPU, RAM, storage) Retry manager for failed downloads Duplicate detection & file organization Export library data to JSON Clean up broken or unreadable tracks Audio format & bitrate selection for quality control
👥 Target Audience
Potty is for data-hoarders, music lovers, playlist curators, and automation nerds who want a single, reliable tool to:
Manage both Spotify and YouTube music sources Keep their library clean, organized, and well-tagged Automate downloads without babysitting multiple programs
🔍 Comparison
Other tools like yt-dlp handle the download part well, but Potty:
Adds interactive menus to streamline usage Integrates Spotify library exports Handles metadata embedding, library cleanup, automation, and organization all in one From what I could find, there’s no other tool that combines all of these in a modular, Python-based CLI.
📦 GitHub: https://github.com/Ssenseii/spotify-yt-dlp-downloader
📄 Docs: readme so far, but coming soon
I’d love feedback, especially if you’ve got feature ideas or spot any rough edges or better name ideas.
submitted by /u/Punk_Saint to r/Python
[link] [comments]
Laisser un commentaire