Skip to main content

A cli tool for downloading media from various platforms.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Multi DL

A cli tool for downloading media from various platforms

🎯 Features

  • Supports YouTube & Spotify (more platforms coming soon).
  • Obtain information about any video, music, playlist, album, channel, etc...
  • Ability to download whole youtube channel.
  • Supports parallel downloads.
  • Supports beautiful search system for downloading and obtaining information.

🚩 Installation

[!IMPORTANT] You must have FFmpeg installed on your system. You can download it from here.

  • Supported Python version: 3.13 or higher

  • Build from source

    pip install git+https://github.com/swayam25/Multi-DL
    
  • Install via pip

    pip install multidl
    
  • Install via uv

    uv tool install multidl
    

⚙️ Configuration

  • Default Config File Path

    • Linux: ~/.config/multidl/config.toml
    • MacOS: ~/Library/Application Support/multidl/config.toml
    • Windows: %APPDATA%/multidl/config.toml
  • Config file path can be overridden by setting the MULTIDL_CONFIG environment variable.

  • Config file structure

    spotify-tos = true # Set to true if you have accepted Spotify's TOS
    
    [spotify-credentials]
    client-id = ""
    client-secret = ""
    
  • Run the following command for more information

    multidl config --docs
    

❤️ Contributing

  • Things to keep in mind

    • Follow our commit message convention.
    • Write meaningful commit messages.
    • Keep the code clean and readable.
    • Make sure the app is working as expected.
  • Use uv package manager for development.

  • Code Formatting

    • Install ruff and pyright extensions in your code editor and format the code before committing.

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

multidl-2.0.0.tar.gz (159.2 kB view details)

Uploaded Source

Built Distribution

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

multidl-2.0.0-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file multidl-2.0.0.tar.gz.

File metadata

  • Download URL: multidl-2.0.0.tar.gz
  • Upload date:
  • Size: 159.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for multidl-2.0.0.tar.gz
Algorithm Hash digest
SHA256 9a9e2de5eaae3a280094894a760d7824f616398e805f13d7fd8e676143782ec1
MD5 6063ed2405f7b7d226f9ecf068399714
BLAKE2b-256 6f7239dfbc15e765004f002eea3ea601e7cb6fd8c7fdf8a9919243b7a8d3a2e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for multidl-2.0.0.tar.gz:

Publisher: pypi-publish.yml on swayam25/Multi-DL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file multidl-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: multidl-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 30.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for multidl-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 74711a817a596d0741a19eb6cbcab5cb0898b05da8bbd3d6b95cec2663ea57ae
MD5 6c4c6b98e5db533e6e60d4f5671a9b02
BLAKE2b-256 6ab5c1c8572bd3e12ca74d533b8538587cbfa5ce50a04214d3f65e751bcc9759

See more details on using hashes here.

Provenance

The following attestation bundles were made for multidl-2.0.0-py3-none-any.whl:

Publisher: pypi-publish.yml on swayam25/Multi-DL

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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