accessibility
Design, implement, and audit inclusive digital products against WCAG 2.2 Level AA, generating semantic ARIA for Web and accessibility traits for iOS/Android.
Skill by Sheshiyer
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/sheshiyer-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.
About
Use cases: design, security
Reviews
Write a reviewNo 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/accessibility
What's inside
- Skill name
accessibility- Description
- Design, implement, and audit inclusive digital products against WCAG 2.2 Level AA, generating semantic ARIA for Web and accessibility traits for iOS/Android. USE WHEN adding screen-reader support, fixing a11y audit failures, or building accessible web and native UI.
- License
- MIT
- Instructions
- 140 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Accessibility (WCAG 2.2)
This skill ensures that digital interfaces are Perceivable, Operable, Understandable, and Robust (POUR) for all users, including those using screen readers, switch controls, or keyboard navigation. It focuses on the technical implementation of WCAG 2.2 success criteria.
## When to Use
- Defining UI component specifications for Web, iOS, or Android.
- Auditing existing code for accessibility barriers or compliance gaps.
- Implementing new WCAG 2.2 standards like Target Size (Minimum) and Focus Appearance.
- Mapping high-level design requirements to technical attributes (ARIA roles, traits, hints).
## Core Concepts
- **POUR Principles**: The foundation of WCAG (Perceivable, Operable, Understandable, Robust).
- **Semantic Mapping**: Using native elements over generic containers to provide built-in accessibility.
- **Accessibility Tree**: The representation of the UI that assistive technologies actually "read."
- **Focus Management**: Controlling the order and visibility of the keyboard/screen reader cursor.
- **Labeling & Hints**: Providing context through `aria-label`, `accessibilityLabel`, and `contentDescription`.
## How It Works
### Step 1: Identify the Component Role
Determine the functional purpose (e.g., Is this a button, a link, or a tab?). Use the most semantic native element available before resorting to custom roles.
### Step 2: Define Perceivable Attributes
- Ensure text contrast meets **4.5:1** (normal) or **3:1** (large/UI).
- Add text alternatives for non-text content (images, icons).
- Implement responsive reflow (up to 400% zoom without loss of function).
### Step 3: Implement Operable Controls
- Ensure a minimum **24x24 CSS pixel** target size (WCAG 2.2 SC 2.5.8).
- Verify all interactive elements are reachable via keyboard and have a visible focus indicator (SC 2.4.11).
- Provide single-pointer alternatives for dragging movements.
### Step 4: Ensure Understandable Logic
- Use consistent navigation patterns.
- Provide descriptive error messages and suggestions for correction (SC 3.3.3).
- Implement "Redundant Entry" (SC 3.3.7) to prevent asking for the same data twice.
### Step 5: Verify Robust Compatibility
- Use correct `Name, Role, Value` patterns.
- Implement `aria-live` or live regions for dynamic status updates.
## Accessibility Architecture Diagram
```mermaid
flowchart TD
UI["UI Component"] --> Platform{Platform?}
Platform -->|Web| ARIA["WAI-ARIA + HTML5"]
Platform -->|iOS| SwiftUI["Accessibility Traits + Labels"]
Platform -->|Android| Compose["Semantics + ContentDesc"]
ARIA --> AT["Assistive Technology (Screen Readers, Switches)"]
SwiftUI --> AT
Compose --> AT
```
## Cross-Platform Mapping
| Feature | Web (HTML/ARIA) | iOS (SwiftUI) | Android (Compose) |
| :----------------- | :----------------------- | :----------------------------------- | :---------------------------------------------------------- |
| **Primary Label** | `aria-label` / `<label>` | `.accessibilityLabel()` | `contentDescription` |
| **Secondary Hint** | `aria-describedby` | `.accessibilityHint()` | `Modifier.semantics { stateDescription = ... }` |
| **Action Role** | `role="button"` | `.accessibilityAddTraits(.isButton)` | `Modifier.semantics { role = Role.Button }` |
| **Live Updates** | `aria-live="polite"` | `.accessibilityLiveRegion(.polite)` | `Modifier.semantics { liveRegion = LiveRegionMode.Polite }` |
## Examples
### Web: Accessible Search
```html
<form role="search">
<label for="search-input" class="sr-only">Search products</label>
<input type="search" id="search-input" placeholder="Search..." />
<button type="submit" aria-label="Submit Search">
<svg aria-hidden="true">...</svg>
</button>
</form>
```
### iOS: Accessible Action Button
```swift
Button(action: deleteItem) {
Image(systemName: "trash")
}
.accessibilityLabel("Delete item")
.accessibilityHint("Permanently removes this item from your list")
.accessibilityAddTraits(.isButton)
```
### Android: Accessible Toggle
```kotlin
Switch(
checked = isEnabled,
onCheckedChange = { onToggle() },
modifier = Modifier.semantics {
contentDescription = "Enable notifications"
}
)
```
## Anti-Patterns to Avoid
- **Div-Buttons**: Using a `<div>` or `<span>` for a click event without adding a role and keyboard support.
- **Color-Only Meaning**: Indicating an error or status _only_ with a color change (e.g., turning a border red).
- **Uncontained Modal Focus**: Modals that don't trap focus, allowing keyboard users to navigate background content while the modal is open. Focus must be contained _and_ escapable via the `Escape` key or an explicit close button (WCAG SC 2.1.2).
- **Redundant Alt Text**: Using "Image of..." or "Picture of..." in alt text (screen readers already announce the role "Image").
## Best Practices Checklist
- [ ] Interactive elements meet the **24x24px** (Web) or **44x44pt** (Native) target size.
- [ ] Focus indicators are clearly visible and high-contrast.From Sheshiyer/skill-clusters, MIT.
More from Sheshiyer/skill-clusters
- 0.474score
agentic-os
Sheshiyer
Build persistent multi-agent operating systems on Claude Code, covering kernel architecture, specialist agents, slash commands, file-based memory, scheduled…
SkillCFreshness: CClaude Code +9 - 0.474score
adding-tauri-splashscreen
Sheshiyer
Add a Tauri splashscreen, loading screen, or startup screen to an app, covering configuration, custom splash HTML, styling, and closing the splash when ready.
SkillCFreshness: CClaude Code +9 - 0.474score
adding-tauri-system-tray
Sheshiyer
Implement Tauri system tray functionality including tray icon setup, tray menu creation, event handling, and runtime updates in the notification area.
SkillCFreshness: CClaude Code +9 - 0.474score
agent-architecture-audit
Sheshiyer
Full-stack diagnostic that audits the 12-layer agent stack for wrapper regression, memory pollution, tool-discipline failures, hidden repair loops, and…
SkillCFreshness: CClaude Code +9 - 0.474score
agent-eval
Sheshiyer
Run head-to-head comparisons of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks, reporting pass rate, cost, time, and consistency metrics.
SkillCFreshness: CClaude Code +9 - 0.474score
agentic-ops-orchestrator
Sheshiyer
Route a real-world operations task to the right skill among 16 agentic-ops specialists — email, messages, GitHub, Jira, Google Workspace, project flow…
SkillCFreshness: CClaude Code +9 - 0.474score
accesslint-scan
Sheshiyer
Audit a live page for accessibility issues, locate each WCAG violation precisely, and return a selector-grounded fix worklist without editing.
SkillCFreshness: CClaude Code +9 - 0.474score
agentic-ops-core
Sheshiyer
Shared reference for the agentic-ops cluster: the evidence-first operator loop (resolve surface → read live state → smallest reversible action → prove it →…
SkillCFreshness: CClaude Code +9 - 0.474score
3d-web-experience
Sheshiyer
Build 3D experiences for the web with Three.js, React Three Fiber, Spline, WebGL, and GLSL — product configurators, immersive sites, interactive scenes.
SkillCFreshness: CClaude Code +9 - 0.474score
accesslint-audit
Sheshiyer
Find and fix WCAG 2.2 accessibility issues in code or live pages, in report mode (prioritized written audit, no edits) or fix mode (audit->edit->verify)…
SkillCFreshness: CClaude Code +9 - 0.474score
accesslint-diff
Sheshiyer
Diff a live page's accessibility violations against a baseline — by default compares uncommitted changes (stash-based), or pass --branch [<name>] to diff…
SkillCFreshness: CClaude Code +9 - 0.474score
adaptability-coach
Sheshiyer
Develop adaptability in changing environments through scenario planning, fast feedback, and flexible execution.
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 78
- Last commit (this folder)
- Jun 5, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Sheshiyer/skill-clusters
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Sheshiyer
- 0.474score
accesslint-audit
Sheshiyer
Find and fix WCAG 2.2 accessibility issues in code or live pages, in report mode (prioritized written audit, no edits) or fix mode (audit->edit->verify)…
SkillCFreshness: CClaude Code +9 - 0.474score
accesslint-scan
Sheshiyer
Audit a live page for accessibility issues, locate each WCAG violation precisely, and return a selector-grounded fix worklist without editing.
SkillCFreshness: CClaude Code +9 - 0.474score
adding-tauri-splashscreen
Sheshiyer
Add a Tauri splashscreen, loading screen, or startup screen to an app, covering configuration, custom splash HTML, styling, and closing the splash when ready.
SkillCFreshness: CClaude Code +9 - 0.474score
agentic-ops-core
Sheshiyer
Shared reference for the agentic-ops cluster: the evidence-first operator loop (resolve surface → read live state → smallest reversible action → prove it →…
SkillCFreshness: CClaude Code +9 - 0.474score
3d-web-experience
Sheshiyer
Build 3D experiences for the web with Three.js, React Three Fiber, Spline, WebGL, and GLSL — product configurators, immersive sites, interactive scenes.
SkillCFreshness: CClaude Code +9 - 0.474score
accesslint-diff
Sheshiyer
Diff a live page's accessibility violations against a baseline — by default compares uncommitted changes (stash-based), or pass --branch [<name>] to diff…
SkillCFreshness: CClaude Code +9
Cite this page
accessibility skill. Agent Mart. https://agentmart.dev/skills/sheshiyer-accessibility (last updated 2026-10-24)