A cross-platform S3 based streaming music player for Android and Linux
[x] Add bucket access credentials at build time in .env file
[ ] Add bucket access credentials at runtime with dedicated form
[x] List Buckets
[x] List Bucket Objects
[x] Save Songs metadatas to sqlite app embedded db
[x] Save Albums metadatas to sqlite app embedded db
[x] Save Artists metadatas to sqlite app embedded db
[x] Play Songs, Albums or Artists on tap
[x] Play Now with Random songs
[ ] Save songs to playlist
Clone this repository on your linux based os with an up-to-date flutter sdk installed.
Install dart dependencies with flutter pub get
Create a .env file at the root of this repo with the following format :
S3_ENDPOINT=your.s3.endpoint
ACCESS_KEY=youracceskey
SECRET_KEY=yoursecretkey
Run dart run build_runner build -d
to generate database and dotenv helpers class.
Connect your Android phone with AndroidDebugBridge activated* then run flutter run -d android
Or flutter run -d linux
to start the Linux Desktop App
Enjoy !
*Optional, only for Android version
Install flutter_distributor
with dart pub global activate flutter_distributor
Run make
See database.md document.
Buckets music folder should be scaffolded like :
Bucket
-- MusicFolder/
---- Artist 1/
------ Album 1/
-------- Song 1
-------- Song 2
-------- .....