Home

Awesome

šŸ”° TIDAL Downloader Next Generation! (tidal-dl-ng)

Release Build status Commit activity License

This tool allows to download songs and videos from TIDAL. Multithreaded and multi-chunked downloads are supported.

A paid plan is required! Audio quality varies up to HiRes Lossless / TIDAL MAX 24-bit, 192 kHz depending on the song available. You can use the command line or GUI version of this tool.

App Image

$ tidal-dl-ng --help

 Usage: tidal-dl-ng [OPTIONS] COMMAND [ARGS]...

ā•­ā”€ Options ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā•®
ā”‚ --version  -v                                                                ā”‚
ā”‚ --help     -h        Show this message and exit.                             ā”‚
ā•°ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā•Æ
ā•­ā”€ Commands ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā•®
ā”‚ cfg    Print or set an option. If no arguments are given, all options will   ā”‚
ā”‚        be listed. If only one argument is given, the value will be printed   ā”‚
ā”‚        for this option. To set a value for an option simply pass the value   ā”‚
ā”‚        as the second argument                                                ā”‚
ā”‚ dl                                                                           ā”‚
ā”‚ gui                                                                          ā”‚
ā”‚ login                                                                        ā”‚
ā•°ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā•Æ

If you like this projects and want to support it, you can buy me a coffee :-)

<a href="https://www.buymeacoffee.com/exislow" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/arial-orange.png" alt="Buy Me A Coffee" style="height: 51px !important;width: 217px !important;" ></a> <a href="https://ko-fi.com/exislow" target="_blank" rel="noopener noreferrer"><img src="https://help.ko-fi.com/hc/article_attachments/11833788361117" alt="61e11d430afb112ea33c3aa5_Button-1-p-500"></a>

šŸ’» Installation / Upgrade

Requirements: Python >= 3.12 (other versions might work but are not tested!)

pip install --upgrade tidal-dl-ng
# AND if you like to have the GUI as well
pip install --upgrade tidal-dl-ng[gui]

You can use the command line (CLI) version to download media:

tidal-dl-ng dl https://tidal.com/browse/track/46755209
# OR
tdn dl https://tidal.com/browse/track/46755209

But also the GUI:

tidal-dl-ng-gui
# OR
tdng
# OR
tidal-dl-ng gui

If you like to have the GUI version only, have a look at the release page and download the correct version for your platform.

šŸ§ Features

ā–¶ļø Getting started with development

šŸš° Install dependencies

Clone this repository and install the dependencies:

poetry install --all-extras --with dev,docs

The main entry points are:

tidal_ng_dl/cli.py
tidal_ng_dl/gui.py

šŸ“ŗ GUI Builder

The GUI is build with PySide6 using the Qt Designer:

PYSIDE_DESIGNER_PLUGINS=tidal_dl_ng/ui pyside6-designer

After all changes are saved you need to translate the Qt Designer *.ui file into Python code:

pyside6-uic tidal_dl_ng/ui/main.ui -o tidal_dl_ng/ui/main.py

šŸ— Build the project

To build the project use this command:

make install

The CI/CD pipeline will be triggered when you open a pull request, merge to main, or when you create a new release.

To finalize the set-up for publishing to PyPi or Artifactory, see here. For activating the automatic documentation with MkDocs, see here. To enable the code coverage reports, see here.

ā€¼ļø Disclaimer

šŸ«‚ Contributors

Thanks to all, who have contributed to this project!

This project is based on:

<a href="https://github.com/exislow/tidal-dl-ng/graphs/contributors"><img src="https://contributors-img.web.app/image?repo=exislow/tidal-dl-ng" /></a>