Files
AndroidLiquidGlass/README.md
T

2.7 KiB

Liquid Glass

Apple's Liquid Glass effect for Android Jetpack Compose.

Demos

Music player demo

Library

The library is in alpha stage, every API may be changed, use it on your own risk.

Add to project

JitPack Release

// settings.gradle.kts in root project
dependencyResolutionManagement {
    repositories {
        maven("https://jitpack.io")
    }
}

// build.gradle.kts in module
implementation("com.github.Kyant0:AndroidLiquidGlass:<version>")

Examples

val providerState = rememberLiquidGlassProviderState(
    backgroundColor = Color.White
)

// content behind the glass
Box(Modifier.liquidGlassProvider(providerState))

// glass
Box(
    Modifier.liquidGlass(
        providerState,
        GlassStyle(
            shape = RoundedCornerShape(16.dp),
            innerRefraction = InnerRefraction(
                height = RefractionHeight(8.dp),
                amount = RefractionAmount((-16).dp)
            ),
            material = GlassMaterial(
                blurRadius = 8.dp,
                brush = SolidColor(Color.White),
                alpha = 0.3f
            )
        )
    )
)

Limitations

The following case is not supported:

LiquidGlassProvider(providerState) {
    LiquidGlass(providerState) {}
}

Instead, you should rewrite it like this:

Box {
    LiquidGlassProvider(providerState) {}
    LiquidGlass(providerState) {}
}

Comparisons

Android device: Google Pixel 4 XL (the smallest width is adjusted to 440 dp to match the density of the iOS device)

iOS device: iPhone 16 Pro Max (simulator)

Test glass area size: 300 x 300, corner radius: 30

iOS Android

Complete comparisons:

Special thanks

Star history

Star history chart