/Harmony-Music

An Android App for streaming Music

Primary LanguageDartGNU General Public License v3.0GPL-3.0

Harmony Music

An app for music streaming made with Flutter(Currently support Android only).

Features

  • Ability to play song from Ytube/Ytube Music.
  • Song cache while playing
  • Radio feature support
  • Background music
  • Playlist creation & bookmark support
  • Artist & Album bookmark support
  • Import song,Playlist,Album,Artist via sharing from Ytube/Ytube Music.
  • Streaming quality control
  • Skip silence
  • Dynamic Theme
  • Equalizer support
  • Lyrics support
  • No Advertisment
  • No Login required
  • No permission required

Download

To Do

  • Backup & Restore

Troubleshoot

  • if you are facing Notification control issue or music playback stopped by system optimization, please enable ignore battery optimization option from settings

Disclaimer

This project has been created while learning & learning is the main intention.
This project is not sponsured or affiliated with, funded, authorized, endorsed by any content provider.
Any Song, content, trademark used in this app are intellectual property of their respective owners.
Harmony music is not responsible for any infringement of copyright or other intellectual property rights that may result
from the use of the songs and other content available through this app.

Learning References & Credits

Flutter documentation - a best guide to learn cross platform Ui/app developemnt
Suragch's Article related to Just audio & state management,architectural style
sigma67's unofficial ytmusic api project
App UI inspired by vfsfitvnm's ViMusic

Major Packages used

  • just_audio: ^0.9.32 - provide audio player to play song
  • audio_service: ^0.18.9 - manage background music & platform audio services
  • get: ^4.6.5 - package for high-performance state management, intelligent dependency injection, and route management
  • youtube_explode_dart: ^1.12.4 - Third party package to provide song url
  • hive: ^2.2.3 - offline db used
  • hive_flutter: ^1.1.0