compose

Guide Jetpack Compose UI development with state, layout, and performance advice.

119|14|Updated Mar 1, 2026
One-click install
npx skills add https://github.com/rcosteira79/android-skills --skill compose-rcosteira79
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: compose
Source: https://github.com/rcosteira79/android-skills/tree/main/skills/compose
Command: npx skills add https://github.com/rcosteira79/android-skills --skill compose-rcosteira79

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides expert guidance and practical solutions for building modern, performant, and accessible Android UIs with Jetpack Compose, addressing common developer challenges.

Core Features & Use Cases

  • State Management: Guides on remember, mutableStateOf, state hoisting, and managing complex UI states.
  • Layout & Modifiers: Explains Modifier chains, custom modifiers, and layout structure for efficient UIs.
  • Performance: Offers tips on recomposition skipping, stability, and animation optimization.
  • Accessibility: Details on semantics, content descriptions, touch targets, and custom actions.
  • Use Case: Optimize a slow-scrolling LazyColumn by understanding recomposition skipping and stable state management, or implement complex animations using updateTransition and Animatable.

Quick Start

Explain how to use Modifier.clickable with a custom interactionSource and indication.

Frequently Asked Questions about compose

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I optimize Jetpack Compose LazyColumn performance and prevent unnecessary recomposition?

To optimize Jetpack Compose LazyColumn performance, ensure recomposition skipping by using stable state management and immutable data objects. This prevents excessive recompositions during scrolling, keeping UI updates efficient.

How does state hoisting work in Jetpack Compose?

State hoisting in Jetpack Compose moves state ownership to the parent composable, making child functions stateless. Using remember and mutableStateOf, this pattern creates reusable components and simplifies complex UI state management.

What's the best way to create custom modifiers and layout structures in Kotlin UI?

Creating custom modifiers in Kotlin UI involves chaining existing modifiers and building custom layout structures. This approach allows developers to encapsulate reusable styling and layout logic for efficient, declarative UIs.

Can I use Jetpack Compose with legacy Android Views in my existing app?

Yes, Jetpack Compose supports interop with legacy Android Views. You can embed Compose composables into existing View hierarchies or integrate traditional Android Views directly within your declarative Compose layouts.

How do I implement complex animations in Jetpack Compose?

Implement complex Jetpack Compose animations using updateTransition and Animatable APIs. These tools provide fine-grained control over animated values, enabling smooth and performant declarative UI transitions.

How do I add accessibility semantics and touch targets in Jetpack Compose?

Add accessibility in Jetpack Compose by applying semantics, content descriptions, and adequate touch target sizes to composables. This ensures screen reader compatibility and navigability for modern Android UI development.