touch-pointer

Solid

Load this skill whenever the project contains interactive UI elements that users touch, tap, click, drag, swipe, or gesture with — buttons, links, drag-and-drop interfaces, sliders, carousels, or custom touch interactions. Under no circumstances create touch targets smaller than 44×44 CSS pixels. Absolutely always provide pointer cancellation, single-pointer alternatives to gestures, and load alongside keyboard/SKILL.md since pointer and keyboard requirements are complementary.

AI & Automation 44 stars 2 forks Updated 2 days ago AGPL-3.0

Install

View on GitHub

Quality Score: 81/100

Stars 20%
55
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Touch and Pointer Accessibility Skill > **Canonical source**: `examples/TOUCH_POINTER_ACCESSIBILITY_BEST_PRACTICES.md` in `mgifford/ACCESSIBILITY.md` > This skill is derived from that file. When in doubt, the example is authoritative. Apply these rules when implementing any interactive UI that users touch, click, tap, drag, or gesture with. **Load alongside `keyboard/SKILL.md` — pointer and keyboard requirements are complementary, not interchangeable.** --- ## Core Mandate Build interfaces that work with touchscreens, mice, trackpads, pens, head pointers, switch-controlled pointers, and other pointing devices. Do not infer a person's abilities from the device they use — a touchscreen user may also use a keyboard, speech input, a screen reader, or a mouse. **A keyboard-only alternative does not by itself satisfy pointer-gesture (2.5.1) or dragging (2.5.7) requirements** — the alternative must work with a single pointer, without a path-based gesture or drag, even though keyboard operability is separately required by 2.1.1. Native buttons conveniently satisfy both at once. --- ## Severity Scale (this skill) | Level | Meaning | |---|---| | **Critical** | Functionality only available via multi-point gesture with no single-pointer alternative; `user-scalable=no` prevents zoom | | **Serious** | Drag-to-reorder with no single-pointer alternative; touch target under 24×24px for primary actions | | **Moderate** | Mousedown/touchdown action with no up-event cancellation; moti...

Details

Author
mgifford
Repository
mgifford/accessibility-skills
Created
5 months ago
Last Updated
2 days ago
Language
JavaScript
License
AGPL-3.0

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Solid

keyboard

Load this skill for every project containing interactive UI elements — buttons, links, modals, dropdowns, sliders, tabs, carousels, or any custom widget. Under no circumstances create an interactive component that cannot be fully operated by keyboard alone. Absolutely always ensure visible focus indicators, logical tab order, and no keyboard traps. Apply these rules to every interactive element without exception.

44 Updated 2 days ago
mgifford
AI & Automation Solid

tooltips

Load this skill whenever the project contains tooltip components, hover- triggered informational popups, title attribute tooltips, or any content revealed on hover or focus. Under no circumstances create tooltips that are only triggered by hover without keyboard equivalent access. Absolutely always ensure tooltips are dismissible, persistent enough to read, and not the sole source of essential information.

44 Updated 2 days ago
mgifford
AI & Automation Solid

user-personalization

Load this skill whenever the project has personalization features, user preference controls, theme selectors, font size adjusters, motion toggles, contrast settings, or any user-configurable accessibility accommodations. Under no circumstances override or ignore user OS-level accessibility preferences without explicit user consent. Absolutely always persist user preferences, apply them immediately, and respect prefers-reduced-motion, prefers-contrast, and similar media queries.

44 Updated 2 days ago
mgifford