Compose Basics Collection
![](https://developer.android.com/static/images/quick-guides/guide-video-illustration.png?authuser=19)
Debugging Compose recomposition
7 minutes
A look into debugging a performance issue in Jetsnack and how to fix it in Jetpack Compose. Learn why deferring state reads by using a lambda means composition can be skipped.
![](https://developer.android.com/static/images/quick-guides/guide-video-illustration.png?authuser=19)
Testing in Compose
4 minutes
Build your first Jetpack Compose tests. Learn how to use Compose's testing artifacts to write UI tests, use test rules, finders, and assertions.
![](https://developer.android.com/static/images/quick-guides/guide-video-illustration.png?authuser=19)
Accessibility in Compose
5 minutes
Add accessibility features to your app. See how to increase your app's reach and versatility with a small amount of work.
![](https://developer.android.com/static/images/quick-guides/guide-video-illustration.png?authuser=19)
Animation in Compose
5 minutes
See how to animate state values, using transitions, animating visibility or size changes and crossfades by using the Compose animation APIs.
![](https://developer.android.com/static/images/quick-guides/guide-video-illustration.png?authuser=19)
Lists in Compose
5 minutes
Explore Compose's lazy components, which make it easy to display lists of items. Learn how to show different item types, implement sticky headers, and programmatically control or react to the scroll-position changes.
![](https://developer.android.com/static/images/quick-guides/guide-video-illustration.png?authuser=19)
State in Compose
5 minutes
Learn how state flows through your Compose-based app and how the framework can automatically update UI to display new values. See how to create observable states, how to retain state across recompositions or configuration changes, and how to structure your composables for optimal data flow.