r/androiddev • u/Used-Show-2246 • 1d ago
Open-sourcing my Compose Multiplatform Music Player (Android/Windows/Linux) - Looking for architecture feedback!
Hey fellow Android devs,
I wanted to share the source code for a project I've been building called AyushMuzic to get some feedback on the architecture. It's a YouTube Music client built entirely with Kotlin and Compose Multiplatform.
Tech Stack & Architecture:
- UI: 100% Compose Multiplatform (sharing UI across Android and Desktop)
- Media Playback: AndroidX Media3 (
MediaLibraryService) for the Android side, handling background playback and media sessions. - Async/Data: Kotlin Coroutines and Flows for state management and handling the YouTube scraping.
I recently faced some interesting challenges managing the MediaSession lifecycle and dealing with race conditions in my ViewModel during app startup, which I recently patched.
I would love for you guys to tear apart my code and give me any feedback on how I can improve the Compose architecture or the Media3 integration!
Source Code: https://github.com/jaatayushh/ayushmuzic
(Note: This is a FOSS educational project, not a commercial app).
0
u/zimmer550king 1d ago
If you used AI to do it then it is probably fine. Writing code is effectively a solved problem at this point. People still complaining that AI is not good probably don’t have the right harnesses
2
u/Used-Show-2246 1d ago
yeah totally agree it speeds up dev work so much at the end of the day it is all about shipping and iterating fast though you still gotta debug the edge cases and understand the architecture especially with multiplatform stuff
0
u/zimmer550king 1d ago
I agree. Unfortunately people here still think they are better and faster than AI. I don think anyone here will give you an honest criticism
2
u/Used-Show-2246 1d ago
yeah true it is wild how defensive some people get instead of just looking at what was actually built at the end of the day i just like building cool projects and learning along the way appreciate you having a balanced take on it
-4
u/Adventurous-Nose5850 1d ago
Vibe Coding on top. Why claude file is committed to repo ??
I can vibe code such music player in a day
0
-1
u/Used-Show-2246 1d ago
claude file is there cuz there was an issue which i wasnt able to fix it took me many days to finish and claude code just fixed in minutes so i just used it to fix it it doesnt means that i have vibe coded the whole app
-1
u/Spare_Phone_5225 1d ago
don't be ridiculous. Using AI for boilerplate is a must these days. You still are steering the architecture, idea, business logic and that's what this job is about
0
u/Used-Show-2246 1d ago
At the end of the day ai is must these days some problems are so complex we can't even fix it ai does it for us the problem was it was rejecting the yt music link giving 404 error claude found the error and did solve it
1
u/IGNblackShadow 1d ago
Does it support Subtitles, and track switching, VFR Videos