A music downloader with streaming downloads and local persistence.
- Streaming downloads with
dio, with progress reported to the user. - Files written to local storage through
path_provider. - Hive used for lightweight key-value persistence of app state.
- Runtime permissions handled for storage and network access.
| Concern | Choice |
|---|---|
| UI | Flutter, Material |
| State management | provider |
| Networking | dio |
| Persistence | hive, hive_flutter |
| Files | path_provider |
| Permissions | permission_handler |
lib/
- `Services`
- `downloading_dialog.dart`
- `localization`
- `model`
- `provider`
- `screen`
- `widgets`
- Flutter
>= 3.16(Dart>= 3.2)
git clone https://github.com/developer-rahim/Download-Music.git
cd Download-Music
flutter pub get
flutter runflutter test
flutter analyzeDownloads land in the app's documents directory — not the shared music library — so no additional storage permission is needed on most Android versions.
Released under the MIT License.