SpotiFlyer

Kotlin Multiplatform Music Downloader, Supports Spotify / Gaana / Youtube Music / Jio Saavn .

Project README

Web CoverAndroid CoverDesktop Cover

SpotiFlyer

  • Kotlin Multiplatform Music Downloader ,supports Spotify, Youtube, Gaana, Jio-Saavn and SoundCloud.

Supports- Playlist, Albums, Tracks. (If You know Any Source for Episodes/Podcasts create an Issue sharing It.)

Currently running on:

GitHub stars GitHub forks GitHub watchers

Encourage this repo by giving it a Star⭐ .

SpotiFlyer is an App(Written in Kotlin), which aims to work as:

  • Downloads: Albums, Tracks and Playlists,etc
  • Save your Data ,by not Streaming your Fav Songs Online again & again(Just Download Them!)
  • No ADS!
  • Works straight out of the box and does not require you to generate or mess with your API keys (already included).

Supported Platforms:

  • Spotify
  • Gaana
  • Youtube
  • Youtube Music
  • Jio-Saavn
  • SoundCloud
  • (more coming soon)

πŸ’» Install

Platform Download Status
Android Download Button βœ… Stable
Windows Download Button βœ… Stable
Windows-JAR Download Button βœ… Stable
MacOS-JAR Download Button βœ… Stable
Linux-DEB Download Button βœ… Stable
Linux-JAR Download Button βœ… Stable
Web Download Button ⚠️ Beta
  • To run the jar version, you need JAVA installed.
  • MacOs DMG is not notarized and signed using a certificate , so Use jar in mac for now.
Get it on F-Droid

Want to Contribute πŸ™‹β€β™‚οΈ?

Want to contribute? Great! All contributions are welcome, from code to documentation to graphics to design suggestions to bug reports. Please use GitHub to its fullest-- contribute Pull Requests, contribute tutorials or other wiki content-- whatever you have to offer, we can use it!

Please Donate to support me and my work! ko-fi paypal

Want to discuss? πŸ’¬

Have any questions, doubts or want to present your opinions, views? You're always welcome. You can start discussions.

Todos πŸ“„

  • Write Tests.
  • Support for Podcasts/Episodes and Shows.
  • Build a Media Player into this app. #113

Note

The availability of YouTube Music in your country is important for this app to work. The reason behind this is, we use YouTube Music to filter out our search results and get the desired song downloaded from Youtube Music. To check if YouTube Music is available in your country, visit YouTube Music.

I am hosting a server for WEB APP on my own personal device , so expect some downtimes, If you have a server available and would like to share , open an issue or ping me wherever you can get a hold of me.

Permissions Info:

  • NETWORK- (INTERNET, ACCESS_NETWORK_STATE, ACCESS_WIFI_STATE): to access the online streaming services, and Confirm Network Connectivity.
  • STORAGE- READ_STORAGE_PERMISSION, READ_EXTERNAL_STORAGE, WRITE_EXTERNAL_STORAGE, MANAGE_EXTERNAL_STORAGE): to save Downloaded Media Files.
  • QUERY_ALL_PACKAGES- in order to check if Youtube Music, Spotify, Gaana, JioSaavn, etc apps are installed and if they are, user can directly open them.
  • REQUEST_IGNORE_BATTERY_OPTIMIZATIONS: User Allows App to Run in Background at runtime in Permission Dialog.
  • Wake Lock: Don't let Wifi/Internet Sleep in screen off / dozing state when Songs are being downloaded.
  • Foreground Service: Service responsible to download and save songs to storage even after app is exited/background.
  • NOTE: Analytics and Crashlytics are OPT-IN (Disabled by Default) and are Self-Hosted.

License GPL-License

GPL-3.0 License This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Free Software, Hell Yeah!

Credits

  • Some Logos are Based on Logos by Freepik.

Disclaimer

Downloading copyright songs may be illegal in your country. This tool is for educational purposes only and was created only to show how Music Platform's Apis like Spotify's API can be exploited to download music. Please support the artists by buying their music.

Open Source Agenda is not affiliated with "SpotiFlyer" Project. README Source: Shabinder/SpotiFlyer