Jetpack Compose Codelabs
This repository contains a set of Android Studio projects to help you learn about Compose in Android. Each sample contains the code for a specific Compose codelab.
For more information about Jetpack Compose, please read the documentation
š»
Requirements
š§¬
Codelabs
Basics codelabs
Go hands-on and learn the fundamentals of declarative UI, working with state, layouts and theming.
Layouts codelabs
Learn how layout works in Jetpack Compose, how to use the built-in layouts, modifiers, and even building your own custom layout.
State codelab
Understand patterns for working with state in a declarative world by building a Todo application.
Theming codelab
Go hands on with Composeās implementation of Material Design to understand how to theme an applicationās colors, typography and shapes and support light and dark themes.
Migration codelab
Understand how Jetpack Compose and View-based UIs can co-exist and interact, making it easy to adopt Compose at your own pace.
Animation codelab
Learn how to use Jetpack Compose Animation APIs.
Navigation codelab
Learn how to use the Jetpack Navigation library in Compose, navigate within your application, navigate with arguments, support deep-links, and test your navigation.
Testing codelab
Learn about testing Jetpack Compose UIs. Write your first tests, and learn about testing in isolation, debugging tests, the semantics tree, and test synchronization.
Accessibility codelab
Learn about the various ways to improve an appās accessibility. Increase touch target sizes, add content descriptions, create custom actions, and more.
License
Copyright 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.