tiddl


Nametiddl JSON
Version 2.5.0 PyPI version JSON
download
home_pageNone
SummaryDownload Tidal tracks with CLI downloader.
upload_time2025-07-17 09:24:49
maintainerNone
docs_urlNone
authoroskvr37
requires_python>=3.11
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Tidal Downloader

![PyPI - Downloads](https://img.shields.io/pypi/dm/tiddl?style=for-the-badge&color=%2332af64)
![PyPI - Version](https://img.shields.io/pypi/v/tiddl?style=for-the-badge)
![GitHub commits since latest release](https://img.shields.io/github/commits-since/oskvr37/tiddl/latest?style=for-the-badge)
[<img src="https://img.shields.io/badge/gitmoji-%20😜%20😍-FFDD67.svg?style=for-the-badge" />](https://gitmoji.dev)

TIDDL is the Python CLI application that allows downloading Tidal tracks and videos!

<img src="https://raw.githubusercontent.com/oskvr37/tiddl/refs/heads/main/docs/demo.gif" alt="tiddl album download in 6 seconds" />

It's inspired by [Tidal-Media-Downloader](https://github.com/yaronzz/Tidal-Media-Downloader) - currently not mantained project.
This repository will contain features requests from that project and will be the enhanced version.

> [!WARNING]
> This app is for personal use only and is not affiliated with Tidal. Users must ensure their use complies with Tidal's terms of service and local copyright laws. Downloaded tracks are for personal use and may not be shared or redistributed. The developer assumes no responsibility for misuse of this app.

# Installation

Install package using `pip`

```bash
pip install tiddl
```

Run the package cli with `tiddl`

```bash
$ tiddl
Usage: tiddl [OPTIONS] COMMAND [ARGS]...

  TIDDL - Tidal Downloader ♫

Options:
  -v, --verbose    Show debug logs.
  -q, --quiet      Suppress logs.
  -nc, --no-cache  Omit Tidal API requests caching.
  --help           Show this message and exit.

Commands:
  auth    Manage Tidal token.
  config  Print path to the configuration file.
  fav     Get your Tidal favorites.
  file    Parse txt or JSON file with urls.
  search  Search on Tidal.
  url     Get Tidal URL.
```

# Basic usage

## Login with Tidal account

```bash
tiddl auth login
```

## Download resource

You can download track / video / album / artist / playlist

```bash
tiddl url https://listen.tidal.com/track/103805726 download
tiddl url https://listen.tidal.com/video/25747442 download
tiddl url https://listen.tidal.com/album/103805723 download
tiddl url https://listen.tidal.com/artist/25022 download
tiddl url https://listen.tidal.com/playlist/84974059-76af-406a-aede-ece2b78fa372 download
```

> [!TIP]
> You don't have to paste full urls, track/103805726, album/103805723 etc. will also work

## Download options

```bash
tiddl url track/103805726 download -q master -o "{artist}/{title} ({album})"
```

This command will:

- download with highest quality (master)
- save track with title and album name in artist folder

### Download quality

| Quality | File extension |        Details        |
| :-----: | :------------: | :-------------------: |
|   LOW   |      .m4a      |        96 kbps        |
| NORMAL  |      .m4a      |       320 kbps        |
|  HIGH   |     .flac      |   16-bit, 44.1 kHz    |
| MASTER  |     .flac      | Up to 24-bit, 192 kHz |

### Output format

More about file templating [on wiki](https://github.com/oskvr37/tiddl/wiki/Template-formatting).

## Custom tiddl home path

You can set `TIDDL_PATH` environment variable to use custom home path for tiddl.

Example CLI usage:

```sh
TIDDL_PATH=~/custom/tiddl tiddl auth login
```

# Development

Clone the repository

```bash
git clone https://github.com/oskvr37/tiddl
```

Install package with `--editable` flag

```bash
pip install -e .
```

Run tests

```bash
python -m unittest
```

# Resources

[Tidal API wiki](https://github.com/Fokka-Engineering/TIDAL)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "tiddl",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": null,
    "author": "oskvr37",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/98/00/32a5baaab80ac1c573c1b857558a77473c3568c402b78b765b3d682cb62f/tiddl-2.5.0.tar.gz",
    "platform": null,
    "description": "# Tidal Downloader\n\n![PyPI - Downloads](https://img.shields.io/pypi/dm/tiddl?style=for-the-badge&color=%2332af64)\n![PyPI - Version](https://img.shields.io/pypi/v/tiddl?style=for-the-badge)\n![GitHub commits since latest release](https://img.shields.io/github/commits-since/oskvr37/tiddl/latest?style=for-the-badge)\n[<img src=\"https://img.shields.io/badge/gitmoji-%20\ud83d\ude1c%20\ud83d\ude0d-FFDD67.svg?style=for-the-badge\" />](https://gitmoji.dev)\n\nTIDDL is the Python CLI application that allows downloading Tidal tracks and videos!\n\n<img src=\"https://raw.githubusercontent.com/oskvr37/tiddl/refs/heads/main/docs/demo.gif\" alt=\"tiddl album download in 6 seconds\" />\n\nIt's inspired by [Tidal-Media-Downloader](https://github.com/yaronzz/Tidal-Media-Downloader) - currently not mantained project.\nThis repository will contain features requests from that project and will be the enhanced version.\n\n> [!WARNING]\n> This app is for personal use only and is not affiliated with Tidal. Users must ensure their use complies with Tidal's terms of service and local copyright laws. Downloaded tracks are for personal use and may not be shared or redistributed. The developer assumes no responsibility for misuse of this app.\n\n# Installation\n\nInstall package using `pip`\n\n```bash\npip install tiddl\n```\n\nRun the package cli with `tiddl`\n\n```bash\n$ tiddl\nUsage: tiddl [OPTIONS] COMMAND [ARGS]...\n\n  TIDDL - Tidal Downloader \u266b\n\nOptions:\n  -v, --verbose    Show debug logs.\n  -q, --quiet      Suppress logs.\n  -nc, --no-cache  Omit Tidal API requests caching.\n  --help           Show this message and exit.\n\nCommands:\n  auth    Manage Tidal token.\n  config  Print path to the configuration file.\n  fav     Get your Tidal favorites.\n  file    Parse txt or JSON file with urls.\n  search  Search on Tidal.\n  url     Get Tidal URL.\n```\n\n# Basic usage\n\n## Login with Tidal account\n\n```bash\ntiddl auth login\n```\n\n## Download resource\n\nYou can download track / video / album / artist / playlist\n\n```bash\ntiddl url https://listen.tidal.com/track/103805726 download\ntiddl url https://listen.tidal.com/video/25747442 download\ntiddl url https://listen.tidal.com/album/103805723 download\ntiddl url https://listen.tidal.com/artist/25022 download\ntiddl url https://listen.tidal.com/playlist/84974059-76af-406a-aede-ece2b78fa372 download\n```\n\n> [!TIP]\n> You don't have to paste full urls, track/103805726, album/103805723 etc. will also work\n\n## Download options\n\n```bash\ntiddl url track/103805726 download -q master -o \"{artist}/{title} ({album})\"\n```\n\nThis command will:\n\n- download with highest quality (master)\n- save track with title and album name in artist folder\n\n### Download quality\n\n| Quality | File extension |        Details        |\n| :-----: | :------------: | :-------------------: |\n|   LOW   |      .m4a      |        96 kbps        |\n| NORMAL  |      .m4a      |       320 kbps        |\n|  HIGH   |     .flac      |   16-bit, 44.1 kHz    |\n| MASTER  |     .flac      | Up to 24-bit, 192 kHz |\n\n### Output format\n\nMore about file templating [on wiki](https://github.com/oskvr37/tiddl/wiki/Template-formatting).\n\n## Custom tiddl home path\n\nYou can set `TIDDL_PATH` environment variable to use custom home path for tiddl.\n\nExample CLI usage:\n\n```sh\nTIDDL_PATH=~/custom/tiddl tiddl auth login\n```\n\n# Development\n\nClone the repository\n\n```bash\ngit clone https://github.com/oskvr37/tiddl\n```\n\nInstall package with `--editable` flag\n\n```bash\npip install -e .\n```\n\nRun tests\n\n```bash\npython -m unittest\n```\n\n# Resources\n\n[Tidal API wiki](https://github.com/Fokka-Engineering/TIDAL)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Download Tidal tracks with CLI downloader.",
    "version": "2.5.0",
    "project_urls": {
        "homepage": "https://github.com/oskvr37/tiddl"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "238aa4b787c9e77d93811d6472567c79fb9adc23f108618103f8f3a2c96d1299",
                "md5": "622b24eff4796d5f0140ca2597f244ba",
                "sha256": "49675c8fad9674632f59061e9481f9936213f7f89eca86cd4700678283210d75"
            },
            "downloads": -1,
            "filename": "tiddl-2.5.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "622b24eff4796d5f0140ca2597f244ba",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 30092,
            "upload_time": "2025-07-17T09:24:48",
            "upload_time_iso_8601": "2025-07-17T09:24:48.848432Z",
            "url": "https://files.pythonhosted.org/packages/23/8a/a4b787c9e77d93811d6472567c79fb9adc23f108618103f8f3a2c96d1299/tiddl-2.5.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "980032a5baaab80ac1c573c1b857558a77473c3568c402b78b765b3d682cb62f",
                "md5": "ee2892ea8f775474bb0ee1e0731e28ec",
                "sha256": "9e09cec0f18e762f23eecdcbec386fedd6551ce795b1c08e4e746ae7dfd9dde8"
            },
            "downloads": -1,
            "filename": "tiddl-2.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "ee2892ea8f775474bb0ee1e0731e28ec",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 27782,
            "upload_time": "2025-07-17T09:24:49",
            "upload_time_iso_8601": "2025-07-17T09:24:49.659284Z",
            "url": "https://files.pythonhosted.org/packages/98/00/32a5baaab80ac1c573c1b857558a77473c3568c402b78b765b3d682cb62f/tiddl-2.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-17 09:24:49",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "oskvr37",
    "github_project": "tiddl",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "tiddl"
}
        
Elapsed time: 3.11511s