A streaming music downloader. https://github.com/d-fi/releases/releases

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

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