Skip to content

creativedrewy/Mozart

Repository files navigation

Maven Central

Mozart

Compose beautiful Android Live Wallpapers

Overview

Mozart is a library that allows you to create Android Live Wallpapers using Jetpack Compose. What sorts of wallpapers can you create? Well, anything you can dream up with Jetpack Compose:

Screen Recording

Installation

dependencies {
    implementation("io.github.creativedrewy:mozartwallpapers:<version>")
}

For version catalog:

[versions]
mozart = "<version>"

[libraries]
mozart = { module = "io.github.creativedrewy:mozartwallpapers", version = "mozart" }

Usage

Create your Wallpaper Service class and implement the required method:

class MyComposeWallpaper: MozartWallpaperService() {

    override val wallpaperContents: @Composable ((OffsetValues) -> Unit)
        get() = { offsets ->
            Box(
                modifier = Modifier
            ) {
                // Your Jetpack composables go here!
            }
        }
}

Create res/xml/wallpaper.xml:

<?xml version="1.0" encoding="utf-8"?>
<wallpaper
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:thumbnail="@drawable/ic_launcher_background"
    android:description="@string/app_name" />

And register the wallpaper in your manifest:

 <service
    android:name="com.myapp.package.MyComposeWallpaper"
    android:enabled="true"
    android:label="My Wallpaper"
    android:exported="true"
    android:permission="android.permission.BIND_WALLPAPER" >

    <intent-filter>
        <action android:name="android.service.wallpaper.WallpaperService" >
        </action>
    </intent-filter>

    <meta-data
        android:name="android.service.wallpaper"
        android:resource="@xml/wallpaper" >
    </meta-data>
</service>

You can apply your wallpaper by firing the relevant Intent:

val myPaperIntent = Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER)
myPaperIntent.putExtra(
    WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT,
    ComponentName(this, MyComposeWallpaper::class.java)
)

License

Copyright 2026 Andrew Watson

Licensed under the Apache License, Version 2.0

About

Compose beautiful Android live wallpapers

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages