# Mobile Android Design > Master Material Design 3 and Jetpack Compose patterns for building native Android apps. Use when designing Android interfaces, implementing Compose UI, or following Google's Material Design guidelines. Source: https://skillsagentes.com/skills/wshobson/agents/mobile-android-design Repository: https://github.com/wshobson/agents Author: wshobson License: MIT Updated: hace 2 meses Context cost: 50 tok installed, 949 tok once triggered, 18.1k tok with every bundled file Bundle: 5 files, 71 KB Permissions requested: none declared ## Install ```bash npx -y skills add wshobson/agents --skill mobile-android-design --agent claude-code ``` ## What it does - Guía la construcción de interfaces Android con Material Design 3 y Jetpack Compose - Aporta componentes Compose de ejemplo como tarjetas con Card, Row y Column - Da buenas prácticas de theming, accesibilidad y gestión de estado en Compose - Señala problemas comunes de recomposición, pérdida de estado y rendimiento ## Use it when - Diseñando interfaces de app Android siguiendo Material Design 3 - Construyendo UI y layouts con Jetpack Compose - Implementando navegación Android con Navigation Compose - Creando layouts adaptativos para teléfonos, tablets y plegables ## What triggers it - "Ayúdame a diseñar una pantalla con Material Design 3 en Jetpack Compose" - "Crea un componente Compose de tarjeta de lista con icono y texto" - "¿Cómo implemento un layout adaptativo para tablets y foldables en Android?" ## Files - SKILL.md — 4 KB - references/android-navigation.md — 20 KB - references/compose-components.md — 23 KB - references/details.md — 9 KB - references/material3-theming.md — 16 KB ## SKILL.md Reproduced verbatim from wshobson/agents under MIT. This section is the upstream document and is in English. # Android Mobile Design Master Material Design 3 (Material You) and Jetpack Compose to build modern, adaptive Android applications that integrate seamlessly with the Android ecosystem. ## When to Use This Skill - Designing Android app interfaces following Material Design 3 - Building Jetpack Compose UI and layouts - Implementing Android navigation patterns (Navigation Compose) - Creating adaptive layouts for phones, tablets, and foldables - Using Material 3 theming with dynamic colors - Building accessible Android interfaces - Implementing Android-specific gestures and interactions - Designing for different screen configurations ## Detailed section: Core Concepts Originally a 9201-byte section in this SKILL.md. Moved to `references/details.md` to fit Codex's 8 KB skill body cap. ## Quick Start Component ```kotlin @Composable fun ItemListCard( item: Item, onItemClick: () -> Unit, modifier: Modifier = Modifier ) { Card( onClick = onItemClick, modifier = modifier.fillMaxWidth(), shape = RoundedCornerShape(12.dp) ) { Row( modifier = Modifier .padding(16.dp) .fillMaxWidth(), verticalAlignment = Alignment.CenterVertically ) { Box( modifier = Modifier .size(48.dp) .clip(CircleShape) .background(MaterialTheme.colorScheme.primaryContainer), contentAlignment = Alignment.Center ) { Icon( imageVector = Icons.Default.Star, contentDescription = null, tint = MaterialTheme.colorScheme.onPrimaryContainer ) } Spacer(modifier = Modifier.width(16.dp)) Column(modifier = Modifier.weight(1f)) { Text( text = item.title, style = MaterialTheme.typography.titleMedium ) Text( text = item.subtitle, style = MaterialTheme.typography.bodyMedium, color = MaterialTheme.colorScheme.onSurfaceVariant ) } Icon( imageVector = Icons.Default.ChevronRight, contentDescription = null, tint = MaterialTheme.colorScheme.onSurfaceVariant ) } } } ``` ## Best Practices 1. **Use Material Theme**: Access colors via `MaterialTheme.colorScheme` for automatic dark mode support 2. **Support Dynamic Color**: Enable dynamic color on Android 12+ for personalization 3. **Adaptive Layouts**: Use `WindowSizeClass` for responsive designs 4. **Content Descriptions**: Add `contentDescription` to all interactive elements 5. **Touch Targets**: Minimum 48dp touch targets for accessibility 6. **State Hoisting**: Hoist state to make components reusable and testable 7. **Remember Properly**: Use `remember` and `rememberSaveable` appropriately 8. **Preview Annotations**: Add `@Preview` with different configurations ## Common Issues - **Recomposition Issues**: Avoid passing unstable lambdas; use `remember` - **State Loss**: Use `rememberSaveable` for configuration changes - **Performance**: Use `LazyColumn` instead of `Column` for long lists - **Theme Leaks**: Ensure `MaterialTheme` wraps all composables - **Navigation Crashes**: Handle back press and deep links properly - **Memory Leaks**: Cancel coroutines in `DisposableEffect` --- Skills Agentes — https://skillsagentes.com/skills/wshobson/agents/mobile-android-design