New to Claude Skills? Learn how to install them →

wshobson on GitHub

Android Mobile Design

Free

Build modern Android apps with Material Design 3 and Compose.

by wshobson38.7k stars on wshobson/agents
5 views
Updated Jul 18, 2026
Get this skill

Free · Opens the source repo

What Android Mobile Design does

The Android Mobile Design skill provides comprehensive guidance on utilizing Material Design 3 (Material You) and Jetpack Compose to create adaptive and visually appealing Android applications. This skill is particularly useful for developers and designers who are focused on building user interfaces that adhere to Google's design guidelines while leveraging the latest features of the Android ecosystem. By mastering these tools, you can create applications that not only look good but also provide a seamless user experience across various devices.

With this skill, you can effectively design Android app interfaces that follow Material Design 3 principles, ensuring that your apps are intuitive and user-friendly. The skill covers essential topics such as implementing Jetpack Compose UI and layouts, creating adaptive designs for different screen sizes, and using Material 3 theming to enhance the visual appeal of your applications. Additionally, it provides insights into building accessible interfaces and implementing Android-specific gestures, which are crucial for modern app development.

The included references, such as android-navigation.md and compose-components.md, offer practical examples and best practices that can help streamline your development process. You will learn how to build responsive layouts that adapt to phones, tablets, and foldable devices, ensuring a consistent user experience across all platforms. Furthermore, the skill emphasizes the importance of accessibility and performance optimization, helping you avoid common pitfalls and improve the overall quality of your applications.

Overall, this skill is ideal for Android developers and designers looking to enhance their knowledge of Material Design and Jetpack Compose, enabling them to create high-quality applications that meet user expectations and industry standards.

When to use it

Use this skill when designing Android interfaces, implementing Jetpack Compose layouts, or following Material Design guidelines for your applications.

When not to use it

This skill may not be suitable for non-Android app development or for projects that do not require adherence to Material Design principles.

What you can build with it

Designing a New Android App

Utilize this skill to create a user-friendly interface for a new Android app, ensuring it adheres to Material Design 3 guidelines.

Implementing Jetpack Compose UI

Leverage the skill's resources to effectively implement Jetpack Compose layouts and components in your Android application.

Creating Adaptive Layouts

Use the skill to design responsive layouts that adapt seamlessly across various Android devices, including phones and tablets.

How to install Android Mobile Design

View source

1. Install with the skills CLI

npx skills add wshobson/agents/mobile-android-design --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by wshobson

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

@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

Frequently asked questions about Android Mobile Design

Similar skills