Android accessibility
19 Claude AI skills for Kotlin Multiplatform (KMP) & Compose Multiplatform (CMP): architecture, networking, UI, testing, migration & build tooling for Android and iOS.
npx -y skills add ShinKev/kmp-skill-library --skill android-accessibilityAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Expert checklist and prompts for auditing and fixing Android accessibility issues, especially in Jetpack Compose.
SKILL.md
2.1 KB, as published. Nobody here has run it
Platform Scope: Android-Specific This skill applies only to Android (
:androidApporandroidMain). It is not applicable to KMP shared code (commonMain) or iOS. For iOS accessibility, refer to Apple's Accessibility documentation and VoiceOver guidelines.
Android Accessibility Checklist
Instructions
Analyze the provided component or screen for the following accessibility aspects.
1. Content Descriptions
- Check: Do
ImageandIconcomposables have a meaningfulcontentDescription? - 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
MinTouchTargetSizeor wrap inBoxwith 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
stateDescriptionto 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?"