Skip to content
Agentmart
Submit a tool

android-accessibility

Use when improving app accessibility, ensuring WCAG compliance, or fixing TalkBack navigation for Android.

Skill by prasad-vennam

IndexedMIT★ 11
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/prasad-vennam-android-accessibility

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use when improving app accessibility, ensuring WCAG compliance, or fixing TalkBack navigation for Android.

Use cases: security

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/android-accessibility

What's inside

Skill name
android-accessibility
Description
Use when improving app accessibility, ensuring WCAG compliance, or fixing TalkBack navigation for Android.
License
MIT
Instructions
62 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Android Accessibility Excellence ♿🛡️

Standard practices for creating inclusive, easy-to-use Android applications that comply with WCAG 2.1+ standards.

## ⚡ When to Use
- **Accessibility Audit**: Reviewing current UI for screen reader issues.
- **Compose Semantics**: Customizing how UI elements are announced.
- **Contrast Ratios**: Ensuring text is readable for low-vision users.
- **Screen Reader Support**: Optimizing navigation with TalkBack.
- **Touch Target Sizes**: Ensuring buttons and links are easy to hit.

## 🏗️ The 4 Principles (POUR)

1.  **Perceivable**: Users can perceive all info via sight, sound, or touch.
2.  **Operable**: Users can interact with the app via various methods.
3.  **Understandable**: UI and navigation are predictable.
4.  **Robust**: Compatible with many assistive tools.

## 🛠️ Compose Semantics Essentials

### 1. `contentDescription`
- **Rule**: Every `Image`, `IconButton`, or clickable decorative icon MUST have a descriptive `contentDescription`.
- **Bad**: `contentDescription = "icon"` or `null` for meaningful icons.
- **Good**: `contentDescription = "Search for products"` or `contentDescription = null` for purely decorative items.

### 2. Semantic Properties
- Use `Modifier.semantics { ... }` for custom descriptions or element roles.
- Use `Modifier.clearAndSetSemantics { ... }` to hide complex child hierarchies from screen readers.

### 3. Merging Descendants
- For a list item, use `Modifier.semantics(mergeDescendants = true)` to announce the whole item at once.
  ```kotlin
  Row(modifier = Modifier.semantics(mergeDescendants = true).clickable { ... }) {
      Text("Order #123")
      Text("Status: Shipped")
  }
  ```

## 📐 Design Best Practices

- **Contrast**: Aim for 4.5:1 for normal text and 3:1 for large text.
- **Touch Targets**: Minimum size of **48dp x 48dp**.
- **Dynamic Type**: Ensure layouts resize correctly for large font scales (`@PreviewFontScales`).

## 🧪 Testing and Verification

- **Accessibility Scanner**: Use the Google app to automatically scan screens for common issues.
- **TalkBack**: Manually test with the screen reader enabled on a physical device.
- **Lint Checks**: Enable `@LintRule` for missing `contentDescription`.

## 📜 Checklist for Developers

- [ ] **Descriptive Labels**: All actionable items state their purpose (e.g., "Delete Comment" vs "Delete").
- [ ] **State Announcements**: Use `liveRegion` or `AnnounceAccessibilityEvent` for dynamic updates (e.g., "Added to cart").
- [ ] **Navigation Order**: Ensure focus moves in a logical left-to-right, top-to-bottom order.
- [ ] **Role Identification**: Mark elements as buttons, checkboxes, or headers.

## 🔗 Related Resources
- [Android Accessibility Help](https://developer.android.com/guide/topics/ui/accessibility)
- [Compose Accessibility Guide](https://developer.android.com/jetpack/compose/accessibility)

From prasad-vennam/Awesome-Android-AI-Agent-Skills, MIT.

More from prasad-vennam/Awesome-Android-AI-Agent-Skills

Signals

Stars
11
Forks
0
Open issues
0
Last commit (this folder)
Mar 31, 2026 (7 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from prasad-vennam

Cite this page

android-accessibility skill. Agent Mart. https://agentmart.dev/skills/prasad-vennam-android-accessibility (last updated 2026-10-24)