Compose

Define your UI programmatically with composable functions that describe its shape and data dependencies.

Compose is combination of 7 Maven Group Ids within androidx. Each Group contains a targeted subset of functionality, each with its own set of release notes.

This table explains the groups and links to each set of release notes.

GroupDescription
compose.animationBuild animations in their Jetpack Compose applications to enrich the user experience.
compose.compilerTransform @Composable functions and enable optimizations with a Kotlin compiler plugin.
compose.foundationWrite Jetpack Compose applications with ready to use building blocks and extend foundation to build your own design system pieces.
compose.materialBuild Jetpack Compose UIs with ready to use Material Design Components. This is the higher level entry point of Compose, designed to provide components that match those described at www.material.io.
compose.material3Build Jetpack Compose UIs with Material Design 3 Components, the next evolution of Material Design. Material 3 includes updated theming and components and Material You personalization features like dynamic color, and is designed to be cohesive with the new Android 12 visual style and system UI.
compose.runtimeFundamental building blocks of Compose's programming model and state management, and core runtime for the Compose Compiler Plugin to target.
compose.uiFundamental components of compose UI needed to interact with the device, including layout, drawing, and input.

Versions

This table lists the current versions of each group.

Maven Group ID Latest Update Stable Release Release Candidate Beta Release Alpha Release
compose.animation March 6, 2024 1.6.3 - - 1.7.0-alpha04
compose.compiler February 21, 2024 1.5.10 - - -
compose.foundation March 6, 2024 1.6.3 - - 1.7.0-alpha04
compose.material March 6, 2024 1.6.3 - - 1.7.0-alpha04
compose.material3 March 6, 2024 1.2.1 - - 1.3.0-alpha02
compose.runtime March 6, 2024 1.6.3 - - 1.7.0-alpha04
compose.ui March 6, 2024 1.6.3 - - 1.7.0-alpha04

Declaring dependencies

To add a dependency on Compose, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

Groovy

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.10"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.10"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

For more information about dependencies, see Add build dependencies.

Feedback

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

BOMs

For the latest BOM releases, visit Compose BOM Mapping Page.

Announcements

Date Announcement
June 26, 2023 Since Compose 1.5.0-beta01 release, Compose aar are located under `*-android` artifacts. With 1.6.0-alpha01, Compose POM files have been updated to point to the `-android` artifact by default for dependency resolution in build systems that do not support Gradle Module Metadata.