# Meloplay Meloplay is a local music player app that plays music from your device built with Flutter. ## Platforms - Android only ## Features - [x] Play music from your device - [x] Background audio - [x] Notification controls - [x] Lock screen controls - [x] Play, pause, skip, previous, seek - [x] Shuffle and repeat - [x] Search for music, artists, albums, genres - [x] Sort by (title, artist, album, duration, date, size, etc) - [x] Order by (ascending, descending) - [x] Playlists (Read, create, rename, delete, add songs, remove songs) - [x] Queue (List, add songs, remove songs, change order) - [x] Favorites (Add songs, remove songs) - [x] Recently played - [ ] Most played - [x] Artists - [x] Albums - [x] Genres - [ ] Lyrics - [ ] Equalizer - [x] Sleep timer - [x] Share music - [x] Settings - [x] Themes (multiple themes) - [ ] Localization ## Screenshots [songs]: screenshots/songs.jpg "Songs" [player]: screenshots/player.jpg "Player" [playlists]: screenshots/playlists.jpg "Playlists" [artists]: screenshots/artists.jpg "Artists" [albums]: screenshots/albums.jpg "Albums" [genres]: screenshots/genres.jpg "Genres" [settings]: screenshots/settings.jpg "Settings" [scan]: screenshots/scan.jpg "Scan" [themes]: screenshots/themes.jpg "Themes" | Songs | Player | Playlists | | --------------- | ----------------- | ----------------------- | | ![Songs][songs] | ![Player][player] | ![Playlists][playlists] | | Artists | Albums | Genres | | ------------------- | ----------------- | ----------------- | | ![Artists][artists] | ![Albums][albums] | ![Genres][genres] | | Settings | Scan | Themes | | --------------------- | ------------- | ----------------- | | ![Settings][settings] | ![Scan][scan] | ![Themes][themes] | ## Dependencies | Name | Description | | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | | [auto_size_text](https://pub.dev/packages/auto_size_text) | Flutter widget that automatically resizes text to fit perfectly within its bounds. | | [bloc](https://pub.dev/packages/bloc) | A predictable state management library. | | [flutter_bloc](https://pub.dev/packages/flutter_bloc) | Flutter widgets that make it easy to implement BLoC design patterns. | | [flutter_cache_manager](https://pub.dev/packages/flutter_cache_manager) | A Flutter plugin for caching images and other resources. | | [flutter_staggered_animations](https://pub.dev/packages/flutter_staggered_animations) | A plugin for adding staggered animations to your Flutter apps. | | [flutter_svg](https://pub.dev/packages/flutter_svg) | Flutter plugin for displaying SVG images. | | [fluttertoast](https://pub.dev/packages/fluttertoast) | Flutter plugin for displaying toast messages. | | [get_it](https://pub.dev/packages/get_it) | Simple Service Locator for dependency injection. | | [hive](https://pub.dev/packages/hive) | A lightweight and blazing fast key-value database. | | [hive_flutter](https://pub.dev/packages/hive_flutter) | Hive database implementation for Flutter. | | [just_audio](https://pub.dev/packages/just_audio) | A feature-rich audio player for Flutter. | | [just_audio_background](https://pub.dev/packages/just_audio_background) | Plugin for playing audio in the background on Android and iOS. | | [lottie](https://pub.dev/packages/lottie) | Library for rendering JSON-based Lottie animations natively. | | [marquee](https://pub.dev/packages/marquee) | A Flutter widget that scrolls text infinitely. | | [on_audio_query](https://pub.dev/packages/on_audio_query) | A Flutter plugin to query songs on Android and iOS. | | [package_info_plus](https://pub.dev/packages/package_info_plus) | Plugin for querying information about the application package. | | [permission_handler](https://pub.dev/packages/permission_handler) | Cross-platform permission handling plugin. | | [share_plus](https://pub.dev/packages/share_plus) | Plugin for sharing content via the platform share UI. | | [url_launcher](https://pub.dev/packages/url_launcher) | Plugin for launching URLs on mobile platforms. | | [liquid_glass_renderer](https://pub.dev/packages/liquid_glass_renderer) | A Flutter plugin for rendering liquid glass effects. | | [device_info_plus](https://pub.dev/packages/device_info_plus) | Plugin for getting device information. | ## Installation ### Prerequisites - Flutter - Android Studio / Xcode ### Setup 1. Clone the repo ```sh git clone ``` 2. Install dependencies ```sh dart pub get ``` 3. Run the app ```sh flutter run ``` ## Permissions Inside `AndroidManifest.xml` we have the following permissions: ```xml ... ... ``` ## Contributing Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. ## License Distributed under the Attribution-NonCommercial-ShareAlike 4.0 International License. See [LICENSE](LICENSE) for more information. ## Contact - [Email](mailto:shokh.xyz@gmail.com) - [GitHub](https://github.com/incrediblesy) ## Show your support Give a star if you like this project!