GithubHelp home page GithubHelp logo

themusicmax / musicmax Goto Github PK

View Code? Open in Web Editor NEW
305.0 2.0 13.0 31.02 MB

Musicmax is a Music Player application for Android built with Jetpack Compose and Jetpack Media 3.

License: Apache License 2.0

Kotlin 100.00%
accompanist android clean-architecture dagger-hilt exoplayer gradle-convention-plugins gradle-kotlin-dsl gradle-version-catalogs jetpack-compose jetpack-media3

musicmax's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

musicmax's Issues

Spanish version

Hi!

If you need translations for spanish version , I can help you😄

crash on start

Process: com.maximillianleonov.musicmax, PID: 17076
java.lang.NoSuchMethodError: No static method AnimatedContent(Ljava/lang/Object;Landroidx/compose/ui/Modifier;Lkotlin/jvm/functions/Function1;Landroidx/compose/ui/Alignment;Ljava/lang/String;Lkotlin/jvm/functions/Function4;Landroidx/compose/runtime/Composer;II)V in class Landroidx/compose/animation/AnimatedContentKt; or its super classes (declaration of 'androidx.compose.animation.AnimatedContentKt' appears in /data/app/~~5XWP1kghMjTuXVGSSXBJUg==/com.maximillianleonov.musicmax-EDp3bv-eAKqI7bSc49_meQ==/base.apk)
at com.maximillianleonov.musicmax.core.ui.component.MediaHeaderKt$SortButton$1.invoke(MediaHeader.kt:233)
at com.maximillianleonov.musicmax.core.ui.component.MediaHeaderKt$SortButton$1.invoke(MediaHeader.kt:232)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:108)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:228)
at androidx.compose.material3.IconButtonKt.IconButton(IconButton.kt:101)
at com.maximillianleonov.musicmax.core.ui.component.MediaHeaderKt.SortButton(MediaHeader.kt:232)
at com.maximillianleonov.musicmax.core.ui.component.MediaHeaderKt.OutlinedMediaHeader(MediaHeader.kt:166)
at com.maximillianleonov.musicmax.core.ui.component.MediaPagerKt$MediaPager$1$3.invoke(MediaPager.kt:102)
at com.maximillianleonov.musicmax.core.ui.component.MediaPagerKt$MediaPager$1$3.invoke(MediaPager.kt:101)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:117)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.animation.AnimatedVisibilityKt.AnimatedEnterExitImpl(AnimatedVisibility.kt:941)
at androidx.compose.animation.AnimatedVisibilityKt.AnimatedVisibility(AnimatedVisibility.kt:277)
at com.maximillianleonov.musicmax.core.ui.component.MediaPagerKt.MediaPager(MediaPager.kt:101)
at com.maximillianleonov.musicmax.feature.home.HomeScreenKt.HomeScreen(HomeScreen.kt:86)
at com.maximillianleonov.musicmax.feature.home.HomeScreenKt.HomeRoute(HomeScreen.kt:44)
at com.maximillianleonov.musicmax.feature.home.navigation.HomeNavigationKt$homeScreen$1$1.invoke(HomeNavigation.kt:35)
at com.maximillianleonov.musicmax.feature.home.navigation.HomeNavigationKt$homeScreen$1$1.invoke(HomeNavigation.kt:34)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:117)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.navigation.compose.NavGraphBuilderKt$composable$1.invoke(NavGraphBuilder.kt:53)
at androidx.navigation.compose.NavGraphBuilderKt$composable$1.invoke(NavGraphBuilder.kt:51)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:138)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.navigation.compose.NavHostKt$NavHost$14$1.invoke(NavHost.kt:308)
at androidx.navigation.compose.NavHostKt$NavHost$14$1.invoke(NavHost.kt:306)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:108)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:228)
at androidx.compose.runtime.saveable.SaveableStateHolderImpl.SaveableStateProvider(SaveableStateHolder.kt:84)
at androidx.navigation.compose.NavBackStackEntryProviderKt.SaveableStateProvider(NavBackStackEntryProvider.kt:65)
at androidx.navigation.compose.NavBackStackEntryProviderKt.access$SaveableStateProvider(NavBackStackEntryProvider.kt:1)
at androidx.navigation.compose.NavBackStackEntryProviderKt$LocalOwnersProvider$1.invoke(NavBackStackEntryProvider.kt:52)

Best Music App ever...

...if innertune didn't exist and was a copy of vimusic; which exists because of vibemusic; which exists because of blackhole. I'm sure im forgetting some. Oh Right, MUSIFY

what sets this apart from rest? Blackhole has a wide range, Vibemusic was a successor, innertune was the best all-rounder, you get my drift?
Why use your app over the other handful of similar music apps? No disrespect, just curious what is unique of it.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • Update dependency com.google.gms.google-services to v4.4.2
  • Update dependency androidx.compose:compose-bom to v2024.06.00
  • Update dependency com.google.firebase:firebase-bom to v33.1.0
  • Update dependency gradle to v8.8
  • Update protobuf to v4.27.1 (com.google.protobuf:protoc, com.google.protobuf:protobuf-kotlin-lite)
  • Update dependency com.google.devtools.ksp to v2
  • 🔐 Create all rate-limited PRs at once 🔐

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/musicmax-ci.yml
  • actions/checkout v4
  • gradle/wrapper-validation-action v3
  • actions/checkout v4
  • actions/setup-java v4
  • actions/checkout v4
  • actions/setup-java v4
  • actions/checkout v4
  • actions/setup-java v4
  • actions/checkout v4
  • actions/setup-java v4
gradle
gradle.properties
settings.gradle.kts
build.gradle.kts
app/build.gradle.kts
benchmark/build.gradle.kts
build-logic/settings.gradle.kts
build-logic/plugins/convention/build.gradle.kts
core/core-common/build.gradle.kts
core/core-data/build.gradle.kts
core/core-datastore/build.gradle.kts
core/core-designsystem/build.gradle.kts
core/core-domain/build.gradle.kts
core/core-media-common/build.gradle.kts
core/core-media-notification/build.gradle.kts
core/core-media-service/build.gradle.kts
core/core-mediastore/build.gradle.kts
core/core-model/build.gradle.kts
core/core-permission/build.gradle.kts
core/core-ui/build.gradle.kts
features/feature-favorite/build.gradle.kts
features/feature-home/build.gradle.kts
features/feature-library/build.gradle.kts
features/feature-player/build.gradle.kts
features/feature-search/build.gradle.kts
features/feature-settings/build.gradle.kts
gradle/libs.versions.toml
  • androidx.core:core-ktx 1.13.1
  • androidx.core:core-splashscreen 1.0.1
  • androidx.activity:activity-compose 1.9.0
  • androidx.compose:compose-bom 2024.05.00
  • androidx.compose.compiler:compiler 1.5.13
  • androidx.benchmark:benchmark-macro-junit4 1.2.4
  • androidx.profileinstaller:profileinstaller 1.3.1
  • androidx.lifecycle:lifecycle-runtime-compose 2.7.0
  • androidx.lifecycle:lifecycle-viewmodel-compose 2.7.0
  • androidx.lifecycle:lifecycle-livedata-ktx 2.7.0
  • androidx.navigation:navigation-compose 2.7.7
  • androidx.hilt:hilt-navigation-compose 1.2.0
  • androidx.room:room-common 2.6.1
  • androidx.room:room-runtime 2.6.1
  • androidx.room:room-compiler 2.6.1
  • androidx.room:room-ktx 2.6.1
  • androidx.datastore:datastore 1.1.1
  • com.google.protobuf:protobuf-kotlin-lite 4.26.1
  • com.google.protobuf:protoc 4.26.1
  • androidx.media3:media3-session 1.3.1
  • androidx.media3:media3-exoplayer 1.3.1
  • androidx.constraintlayout:constraintlayout-compose 1.0.1
  • androidx.test.ext:junit 1.1.5
  • androidx.test.espresso:espresso-core 3.5.1
  • androidx.test.uiautomator:uiautomator 2.3.0
  • junit:junit 4.13.2
  • io.mockk:mockk 1.13.10
  • com.android.tools:desugar_jdk_libs 2.0.4
  • org.jetbrains.kotlinx:kotlinx-coroutines-core 1.8.0
  • org.jetbrains.kotlinx:kotlinx-coroutines-android 1.8.0
  • org.jetbrains.kotlinx:kotlinx-coroutines-guava 1.8.0
  • org.jetbrains.kotlinx:kotlinx-datetime 0.5.0
  • com.google.dagger:hilt-core 2.51.1
  • com.google.dagger:hilt-android 2.51.1
  • com.google.dagger:hilt-compiler 2.51.1
  • androidx.hilt:hilt-work 1.2.0
  • androidx.hilt:hilt-compiler 1.2.0
  • javax.inject:javax.inject 1
  • com.google.accompanist:accompanist-systemuicontroller 0.34.0
  • com.google.accompanist:accompanist-permissions 0.34.0
  • io.coil-kt:coil 2.6.0
  • io.coil-kt:coil-compose 2.6.0
  • com.github.maximillianleonov:renderscript-intrinsics-replacement-toolkit 0.8-beta
  • io.gitlab.arturbosch.detekt:detekt-formatting 1.23.6
  • ru.kode:detekt-rules-compose 1.3.0
  • com.twitter.compose.rules:detekt 0.0.26
  • com.android.tools.build:gradle 8.4.0
  • org.jetbrains.kotlin:kotlin-gradle-plugin 1.9.23
  • com.diffplug.spotless:spotless-plugin-gradle 6.25.0
  • io.gitlab.arturbosch.detekt:detekt-gradle-plugin 1.23.6
  • com.google.firebase:firebase-bom 33.0.0
  • com.android.application 8.4.0
  • com.android.library 8.4.0
  • com.android.test 8.4.0
  • org.jetbrains.kotlin.android 1.9.23
  • org.jetbrains.kotlin.jvm 1.9.23
  • org.jetbrains.kotlin.kapt 1.9.23
  • com.google.devtools.ksp 1.9.23-1.0.20
  • com.diffplug.spotless 6.25.0
  • io.gitlab.arturbosch.detekt 1.23.6
  • com.google.dagger.hilt.android 2.51.1
  • com.google.protobuf 0.9.4
  • com.google.gms.google-services 4.4.1
  • com.google.firebase.crashlytics 3.0.0
gradle-wrapper
gradle/wrapper/gradle-wrapper.properties
  • gradle 8.7

  • Check this box to trigger a request for Renovate to run again on this repository

Using wavy sliders?

Hi,

I'm doing a self-promotion here :)
Please ignore/close this if you are not interested.

Would you like to use the wavy-slider in your app?
I think Android 13 uses this kind of slider for its media controls.

Demo.

publish it on fdroid

Since Musimax is opensource, it will be great to have it also on fdroid.
( I know that it is available on IzzyOnDroid, but it isn't the main repo )

much thanks and features hope

much thanks as there is so well project with Jetpeck Compose and android.media3 implementation here!

there are the features hoped for my personally, more thanks if could be added:

  • showing song information about size, duration, frequency, rate, and more params, etc
  • showing song lyric
  • playback mode about repeat, shuffle, and playlist
  • music file view about search, folder display, and playlist
  • gesture operation about pull down to close the playback view, etc

Translatable ?

Is the app translatable and when, where are the strings to translate ?
Thanks in advance.

non-free dependencies

I see with the latest release, Google Ads (and thus the GMS library) have been added – so I had to add the Ads and NonFreeDep anti-features to the app's listing in my repo. This also makes it impossible to get your app to F-Droid.org if you had planned that. Maybe you could provide a free/libre build flavor (and its APK) for the free/libre world? Thanks in advance for considering!

Any plans to include wearos and android auto/automotive support

Any plans to include wearos and android auto/automotive support

Just found out about this code, its great to see app supporting android media3, wearos and android auto are now an essential feature that a music player app should have , you should consider developing for these form factors .

[Feature Request] Speed and Pitch Control

Would it be possible to add speed and pitch control? This functionality is not available in many players, and I think it would be a valuable addition. I would greatly appreciate it if you could consider implementing this feature.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.