web-a11y-dynamic-ui

Implements accessible dynamic UI patterns for filtering, sorting, pagination, and live regions.

Updated Sep 8, 2026
One-click install
npx skills add https://github.com/pedropenha/project-skills --skill web-a11y-dynamic-ui-pedropenha
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: web-a11y-dynamic-ui
Source: https://github.com/pedropenha/project-skills/tree/main/.agents/skills/web-a11y-dynamic-ui
Command: npx skills add https://github.com/pedropenha/project-skills --skill web-a11y-dynamic-ui-pedropenha

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Client-rendered interfaces that update without a full page load often leave screen reader users unaware of changes, causing confusion and broken task flows. This Skill provides rules and a checklist to make dynamic UI updates perceivable and operable for all users. ## Core Features & Use Cases - Live Region Guidance: Defines when to use ARIA live regions for status messages, loading, empty, error, and success states without moving focus. - Focus Management Rules: Specifies when focus should move to improve task flow and orientation after dynamic updates. - Semantic Data Views: Covers table semantics, sort state, pagination position, result counts, and progress indicators. - Use Case: When building a product listing page with client-side filters and pagination, apply this Skill to announce result counts, expose the current page, and communicate sort order to assistive technologies. ## Quick Start Review my client-rendered search results page and produce an accessibility plan covering live regions, focus strategy, and table semantics.

Frequently Asked Questions about web-a11y-dynamic-ui

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make dynamic UI updates accessible to screen readers?▼

Use ARIA live regions for status updates that should not move focus, such as loading, error, and success messages. Move focus only when it improves task flow, and communicate result counts, sort state, and current page semantically and visually.

When should I use ARIA live regions instead of moving focus?▼

Use live regions for status updates that users need to hear but that should not interrupt their current position, like filter result counts or background loading states. Move focus only when the update changes the user's task context, such as after pagination or form submission.

How do I make a sortable data table accessible?▼

Use real table semantics with captions or labels and proper header cells, and expose the sort state on the active header using aria-sort. Tables should represent tabular relationships only, never layout, and interactive controls inside must preserve context.

What should pagination announce to assistive technologies?▼

Pagination must expose the current page and the available movement options, such as next, previous, and page numbers. After navigation, communicate the new page position and updated result range both semantically and visually.

When is this dynamic UI accessibility approach not applicable?▼

It targets interfaces that update client-side without a full page load. Traditional server-rendered pages with full reloads rely on standard document semantics and page titles instead of live regions and focus management strategies.