Skip to main content

A modern, TUI-based Spotify and YouTube audio downloader.

Project description

🎵 Mooze

Python Version Textual TUI yt-dlp Engine Platform Support MIT License

1784285736694


✨ Features

  • Dual Download Modes:
    • Single Mode: Paste a Spotify track link or type a raw search query (e.g., "Coldplay Yellow").
    • Batch Mode: Paste a list of multiple Spotify links (one per line) to download them all at once. Batch downloads are automatically zipped into a neat archive!
  • Smart Spotify Translation: Bypasses web-scrapers using oEmbed and Googlebot masking to accurately extract Track + Artist data.
  • Audiophile Quality: Choose your preferred output:
    • MP3 - High Quality (320kbps)
    • MP3 - Normal (128kbps)
    • WAV - Best Quality (Lossless)
  • Modern Terminal UI: Built with Textual, featuring mouse support, smooth toggle switches, and background asynchronous workers to keep the UI perfectly responsive while downloading.

🛠️ Prerequisites

Mooze uses yt-dlp under the hood, which requires FFmpeg to convert video files into clean MP3/WAV audio.

Windows:

winget install ffmpeg

MacOS:

brew install ffmpeg

Linux:

sudo apt install ffmpeg

(Note: Restart your terminal after installing FFmpeg so your system recognizes it.)


🚀 Installation

Because Mooze is packaged professionally, you can install it globally on your system.

  1. Clone the repository:
git clone [https://github.com/X0fx/mooze.git](https://github.com/X0fx/mooze.git)
cd mooze
  1. Install the application:
pip install -e .

📖 User Manual

Once installed, simply type mooze in any terminal to launch the dashboard.

📥 Single Song Download

  1. Ensure the Batch Mode switch is toggled OFF .
  2. In the input box, paste a Spotify Track Link (e.g., https://open.spotify.com/track/...) OR type a search term (e.g., Mozart Requiem).
  3. Select your desired audio format from the dropdown menu.
  4. Type your save folder path (e.g., C:/Users/YourName/Downloads or just ./ for the current folder).
  5. Click Search & Download .

📦 Batch Downloading

  1. Toggle the Batch Mode switch to ON . The UI will dynamically expand.
  2. Paste multiple Spotify links into the text area. You must put exactly one link per line.
  3. Select your audio format and your save location.
  4. Click Download Batch .

Note: Mooze will create a temporary folder, process all your songs, compress them into a Mooze_Batch_Archive.zip file in your save directory, and clean up the temporary files automatically.


⚠️ Disclaimer

This tool is for educational purposes and personal use only. It relies on publicly available APIs and YouTube search mechanisms. Please respect digital rights and support the artists you listen to.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mooze-1.0.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mooze-1.0.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file mooze-1.0.0.tar.gz.

File metadata

  • Download URL: mooze-1.0.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.14

File hashes

Hashes for mooze-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d0d94050832b2c36b350436bc1ebe1ee84c959430810a0fe38da2faedaed557f
MD5 05f71e007d0b4787e6e9bd6a0b59d1f3
BLAKE2b-256 39d241c4f8aa5d5315d4954df1df089a4f81b45f3bf4be6f5eeebc040826702a

See more details on using hashes here.

File details

Details for the file mooze-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: mooze-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.14

File hashes

Hashes for mooze-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 332da77f18f574f251e019dfc7a9e017c0236f58c6746e8f623b8396d27b8882
MD5 8bb512e907a78c551a4d5c9815af0db8
BLAKE2b-256 b917b79839d9e3abe8b5dfa11308bef12a6d60b158c0eb0b8953eed48b50c36d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page