skills/wcag-audit-operable-motion-test/SKILL.md
Test animations for motion sensitivity compliance and reduced motion preferences
npx skillsauth add jkense/agent-skills-wcag wcag-audit-operable-motion-testInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this tool when implementing animations, transitions, or moving content to ensure compliance with motion sensitivity guidelines and respect for user reduced motion preferences.
node scripts/test.js --duration 3.5 --type parallax
node scripts/test.js --duration 2.0 --flashes 5 --reduced-motion true
node scripts/test.js --json '{"duration": 4.2, "type": "scroll", "flashes": 0}'
node scripts/test.js --json '{
"duration": 3.5,
"type": "carousel",
"flashes": 0,
"userPrefersReducedMotion": true
}'
--duration: Animation duration in seconds--type: Animation type (scroll, parallax, carousel, transition, etc.)--flashes: Number of flashes per second (default: 0)--reduced-motion: Whether to simulate reduced motion preference (true/false)--json: JSON input with animation propertiesReturns JSON with compliance assessment and recommendations:
{
"animation": {
"duration": 3.5,
"type": "parallax",
"flashes": 0
},
"compliance": {
"reducedMotion": true,
"flashing": true,
"duration": false
},
"issues": ["Animation duration exceeds 5 seconds"],
"recommendations": [
"Provide option to pause or disable parallax scrolling",
"Consider using reduced motion alternative"
]
}
$ node scripts/test.js --duration 2.0 --type transition
✅ Reduced motion: RESPECTED
✅ Flashing: PASS (no flashes detected)
✅ Duration: PASS (2.0s within limit)
Animation meets accessibility requirements
$ node scripts/test.js --duration 8.5 --type carousel
⚠️ Reduced motion: NEEDS ATTENTION
✅ Flashing: PASS (no flashes detected)
❌ Duration: FAIL (8.5s exceeds 5s limit)
Recommendations:
- Provide pause/stop controls for auto-advancing carousel
- Consider shorter transition duration or user control
- Offer static alternative when reduced motion is preferred
$ node scripts/test.js --duration 1.0 --flashes 4
✅ Reduced motion: RESPECTED
❌ Flashing: FAIL (4 flashes/s exceeds 3 flashes/s limit)
❌ Duration: PASS (1.0s within limit)
Recommendations:
- Reduce flashing frequency to maximum 3 flashes per second
- Consider non-flashing alternatives
- Test with users sensitive to flashing content
prefers-reduced-motion user preferenceprefers-reduced-motionFor more information about Agent Skills and how they extend AI capabilities.
testing
Route form input and data collection accessibility requirements
testing
Form design accessibility rules for user input and data collection
testing
Route typography accessibility design decisions and requirements
testing
Convert between px, pt, em, rem units with accessibility context