A streaming music downloader.

Sayem Chowdhury 5b94fc203a v2.1.3 3 gadi atpakaļ
__tests__ efb3cb151c Update core to v1.3.0 3 gadi atpakaļ
assets fc3b34cd1f Update assets 4 gadi atpakaļ
docs 0fa11d7057 update docs 3 gadi atpakaļ
src 55d20dbc22 update arl 3 gadi atpakaļ
.eslintrc.js a9c631f7f3 use ts parser 3 gadi atpakaļ
.gitignore 9ddf76bd7a update gitignore 3 gadi atpakaļ
.prettierrc.js a9c631f7f3 use ts parser 3 gadi atpakaļ
LICENSE 3f25986943 MIT 5 gadi atpakaļ
README.md 8de3d7ff9c update readme 3 gadi atpakaļ
build.sh 36d2c142fd use node16 3 gadi atpakaļ
package.json 5b94fc203a v2.1.3 3 gadi atpakaļ
setup-termux.js a9c631f7f3 use ts parser 3 gadi atpakaļ
tsconfig.json 8b0434a571 include src and package.json 3 gadi atpakaļ
yarn.lock 903376b1d1 update dependencies 3 gadi atpakaļ

README.md

d-fi

A streaming music downloader.

Screenshot

d-fi is a program for downloading music from streaming music services. Remember that the artists and studios put a lot of work into making music - purchase the original music to support them.

v2 Migration Guide

Please read here

Features

  • Supports downloading tracks, albums, artists, and playlists
  • Allows music quality selection (128 kbps, 320 kbps and FLAC)
  • Auto tagging MP3 & FLAC (including album cover and lyrics)
  • Support downloading from both links and via searching

Supported Sites

Deezer, Spotify and Tidal

  • Tracks
  • Albums
  • Audiobook
  • Playlists
  • Artists

Note that Spotify and Tidal tracks will be sourced from Deezer using ISRC matching and UPC for albums. Also Spotify artist tracks are limited upto 10 items.

Install

Method 1

First install nodejs following this tutorial

Once nodejs installation is complete run this command.

sudo npm i -g d-fi

or if you are using yarn

yarn global add d-fi

Now you can run using command d-fi to start.

Method 2

Download pre-built binary from here and then double click on Windows to run. For Linux and macOS user, first open your choice of terminal and the execute with ./d-fi

CLI Parameters

All options are optional. You can suppress prompts via providing quality and url if you are using scripts. You can also use config file. Read the docs here

Parameter Short Supported values Description
--quality -q 128/320/flac The quality of the files to download
--output -o Output file format according to saveLayout. See more here The path to download the files to
--url -u or nothing album/artist/playlist/track url Downloads from url
--input-file -i Downloads all urls listed in text file. Example: d-fi -i links.txt Downloads from url
--concurrency -c 1 to 50 Downloads X songs at a time
--set-arl -a arl string Set arl cookies
--headless -d Nothing Run in headless mode. You must provide both --url and --quality if you run in headless mode. This mode is meant for scripting automation.
--resolve-full-path -rfp Nothing Create playlist file with absolute path location
--create-playlist -cp Nothing Create playlist for albums and artists
--config-file -conf Config location. Example: d-fi -conf my-d-fi.config.json Specify custom location to config file
--update -U Nothing Download new update (binary only)
--help -h Nothing Shows the CLI help

Donations

If you want to show your appreciation, you can donate me on here. Thanks!

Telegram community group: @dFiCommunity

Disclaimer

d-fi was not developed for pirating music but educational and private usage.

It may be illegal to use this in your country,

I am not responsible in any way for the usage of others.


Made with :heart: & :coffee: by Sayem

Based on SMLoadr and Deezloader Remix