Skip to main content

android-accessibility

Expert checklist and prompts for auditing and fixing Android accessibility issues, especially in Jetpack Compose.

Source facts

Repository
maxrave-dev/SimpMusic
Last source activity
March 5, 2026 at 02:43
Detected SKILL.md language
English
Stars
13,219
Forks
752

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
android-accessibility
description
Expert checklist and prompts for auditing and fixing Android accessibility issues, especially in Jetpack Compose.
# Android Accessibility Checklist ## Instructions Analyze the provided component or screen for the following accessibility aspects. ### 1. Content Descriptions * **Check**: Do `Image` and `Icon` composables have a meaningful `contentDescription`? * **Decorative**: If an image is purely decorative, use `contentDescription = null`. * **Actionable**: If an element is clickable, the description should describe the *action* (e.g., "Play music"), not the icon (e.g., "Triangle"). ### 2. Touch Target Size * **Standard**: Minimum **48x48dp** for all interactive elements. * **Fix**: Use `MinTouchTargetSize` or wrap in `Box` with appropriate padding if the visual icon is smaller. ### 3. Color Contrast * **Standard**: WCAG AA requires **4.5:1** for normal text and **3.0:1** for large text/icons. * **Tool**: Verify colors against backgrounds using contrast logic. ### 4. Focus & Semantics * **Focus Order**: Ensure keyboard/screen-reader focus moves logically (e.g., Top-Start to Bottom-End). * **Grouping**: Use `Modifier.semantics(mergeDescendants = true)` for complex items (like a row with text and icon) so they are announced as a single item. * **State descriptions**: Use `stateDescription` to describe custom states (e.g., "Selected", "Checked") if standard semantics aren't enough. ### 5. Headings * **Traversal**: Mark title texts with `Modifier.semantics { heading() }` to allow screen reader users to jump between sections. ## Example Prompts for Agent Usage * "Analyze the content description of this Image. Is it appropriate?" * "Check if the touch target size of this button is at least 48dp." * "Does this custom toggle button report its 'Checked' state to TalkBack?"
View on GitHub