Musynth is an open-source Flutter music player that reads audio files directly from your device. It organises your library by songs, albums, artists, genres, and playlists, delivers background playback with a system media notification, and dynamically themes its Now Playing screen from the dominant colour of the current album artwork.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/CesarArellano/Music-Player-App/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
Learn what Musynth is, what it can do, and how it is structured.
Installation
Clone the repo, install dependencies, and get the app running.
Architecture
Understand the BLoC/Cubit state model, DI layer, and screen routing.
Core Features
Explore library browsing, playback controls, search, and the tag editor.
What Musynth Provides
Musynth is built entirely in Dart/Flutter and targets Android (primary) and iOS. It reads media metadata from the device via themusic_query_selector plugin and plays audio through just_audio with audio_service handling the background session and lock-screen controls.
Library Browsing
Songs, Albums, Artists, Genres, and Playlists tabs with an A–Z fast-scroll rail.
Background Playback
Persistent media notification with favourite, skip, and close controls.
Tag Editor
Read and write ID3 tags (title, album, artist, genre, artwork) via native JAudioTagger.
Dynamic Theming
Now Playing screen colours adapt to the dominant hue of the album artwork.
Search
Full-text search across songs, albums, and artists with optional voice input.
Favourites
Mark songs as favourites; persisted across restarts via SharedPreferences.
Quick Orientation
Check prerequisites
Make sure you have Flutter 3.7+, Dart SDK ≥ 3.12, and the Android SDK installed. See Prerequisites.
Clone and install
Clone the repository and run
flutter pub get. See Installation.Run on a device
Connect an Android device and run
flutter run. Grant media permissions when prompted. See Running the App.Explore the codebase
Read the Architecture Overview to understand how the five Cubits, service layer, and repository pattern fit together.