Skip to content
TBG101Public

About

A clean, offline-first music player for Android. Play your local library, search YouTube, and download tracks straight to your device. Built with Flutter.

Topics

Resources

Contributing

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

🎡 Music Player

Flutter Dart Platform License

A clean, offline-first music player for Android. Play your local library, search YouTube, and download tracks straight to your device.

About

A Flutter music player built around your local library β€” with a YouTube search and download flow baked right in. Background playback, lock-screen controls, and a local cache keep everything fast and offline-friendly.

Features

  • Local library β€” scans device audio, caches results in a local Drift database
  • Player β€” full-screen and docked mini-player views
  • Background playback β€” continues with media notification controls (play/pause, next/prev)
  • YouTube search & download β€” search videos, download audio, convert to MP3
  • Download queue β€” progress notifications with cancel/open actions
  • Artwork & metadata β€” embedded album art and ID3 tags
  • Rescan β€” refresh your library from the drawer
  • Permissions flow β€” guided storage/notification permission checks

Tech Stack

Area Package
State management GetX
Audio just_audio, audio_service
Local DB Drift
YouTube youtube_explode_dart
Conversion ffmpeg_kit_flutter_new_audio
Metadata metadata_god
Notifications awesome_notifications

Getting Started

Prerequisites

  • Flutter SDK (3.0 or newer)
  • Android device or emulator

Run it

git clone git@github.com:TBG101/Music-Player-Android.git
cd Music-Player-Android
flutter pub get
flutter run

Legal Disclaimer

This project is provided for educational and personal use only.

  • No ownership of content. This app does not host, store, or distribute any media. It only streams and downloads content that is already publicly available on YouTube.
  • You are responsible for what you download. Respect YouTube's Terms of Service, copyright law, and the rights of creators in your jurisdiction. Downloading copyrighted material without permission may be illegal where you live.
  • Personal, non-commercial use. Do not use this app to redistribute, sell, or publicly broadcast downloaded content.
  • No warranty. The software is provided "as is", without warranty of any kind. The authors are not liable for any misuse, copyright strikes, account termination, or legal consequences arising from the use of this software.

If you only download content you have the rights to β€” your own uploads, Creative Commons works, or public domain material β€” you are on solid ground.

Project Structure

lib/
β”œβ”€β”€ app/            # App shell, theme, DI bindings
β”œβ”€β”€ core/           # Services, utils, shared widgets
└── features/
    β”œβ”€β”€ library/    # Local library: scan, cache, home UI
    β”œβ”€β”€ player/     # Audio handler + player UI
    β”œβ”€β”€ youtube/    # Search, downloads, conversion queue
    └── permissions/# Permission check flow

Feature-first layout: each feature owns its controller/, data/, and presentation/ layers, wired together with GetX.

About

A clean, offline-first music player for Android. Play your local library, search YouTube, and download tracks straight to your device. Built with Flutter.

Topics

Resources

Contributing

Stars

1 star

Watchers

1 watching

Forks

Releases

Contributors

Languages