compose

Declarative UI toolkit enabling programmatic UI via composable functions, offering animations, Material (including Material 3), foundation building blocks, compiler optimizations, runtime state management, and core UI primitives.

Android JVMJVMKotlin/NativeWasmJS
GitHub stars6006
Authorsandroidx
Dependents10
OSS Health
LicenseApache License 2.0
Creation dateabout 6 years ago

Last activity8 days ago
Latest release1.5.0-alpha21 (8 days ago)

Compose

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

[User Guide]

[Code Sample]

Structure

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.

Group Description
androidx.compose.animation Build animations in their Jetpack Compose applications to enrich the user experience.
androidx.compose.compiler Transform @Composable functions and enable optimizations with a Kotlin compiler plugin.
androidx.compose.foundation Write Jetpack Compose applications with ready to use building blocks and extend foundation to build your own design system pieces.
androidx.compose.material Build 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.
androidx.compose.material3 Build 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.
androidx.compose.runtime Fundamental building blocks of Compose's programming model and state management, and core runtime for the Compose Compiler Plugin to target.
androidx.compose.ui Fundamental components of compose UI needed to interact with the device, including layout, drawing, and input.

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:

Kotlin

android {
    buildFeatures {
        compose = true
    }
    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}
Groovy
android {
    buildFeatures {
        compose true
    }
    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

For more information about dependencies, see Add build dependencies.

BOMs

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

Issue tracker

Issue Tracker

Android JVMJVMKotlin/NativeWasmJS
GitHub stars6006
Authorsandroidx
Dependents10
OSS Health
LicenseApache License 2.0
Creation dateabout 6 years ago

Last activity8 days ago
Latest release1.5.0-alpha21 (8 days ago)

Compose

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

[User Guide]

[Code Sample]

Structure

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.

Group Description
androidx.compose.animation Build animations in their Jetpack Compose applications to enrich the user experience.
androidx.compose.compiler Transform @Composable functions and enable optimizations with a Kotlin compiler plugin.
androidx.compose.foundation Write Jetpack Compose applications with ready to use building blocks and extend foundation to build your own design system pieces.
androidx.compose.material Build 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.
androidx.compose.material3 Build 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.
androidx.compose.runtime Fundamental building blocks of Compose's programming model and state management, and core runtime for the Compose Compiler Plugin to target.
androidx.compose.ui Fundamental components of compose UI needed to interact with the device, including layout, drawing, and input.

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:

Kotlin

android {
    buildFeatures {
        compose = true
    }
    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}
Groovy
android {
    buildFeatures {
        compose true
    }
    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

For more information about dependencies, see Add build dependencies.

BOMs

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

Issue tracker

Issue Tracker