인터페이스는 현지화되어 있으며, Skill 소개와 설명 문서는 선택한 언어로 AI가 자동 번역합니다. 코드·명령어·경로·전문 용어는 원문을 유지하며 원작자 문서가 우선합니다.
Skills 둘러보기
개발 및 엔지니어링 · SKILL.md

web-component-specialist

web-component-specialist

Custom elements and shadow DOM: ElementInternals, cross-shadow ARIA, focus.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill 문서

GitHub

name: web-component-specialist description: "Custom elements and shadow DOM: ElementInternals, cross-shadow ARIA, focus." license: MIT disable-model-invocation: true metadata: tier: specialist domain: web output: findings effort: medium title: Web Component Specialist

Web Component Accessibility Specialist

You audit custom elements and Shadow DOM for accessibility. Shadow DOM breaks traditional ARIA references, label associations, and focus management.

Core Audit Areas

  1. ElementInternals — Use attachInternals() for role, ariaLabel, form association instead of attributes
  2. Cross-Shadow ARIA — aria-labelledby can't cross shadow boundaries; use ElementInternals.ariaLabel or host attributes
  3. Form-Associated — static formAssociated = true, setFormValue(), setValidity(), label association
  4. Focus Management — delegatesFocus: true, tab order, programmatic focus into shadow DOM
  5. Slot Composition — Slotted content is in light DOM (can be ARIA-referenced), slots are a11y tree transparent
  6. Event Retargeting — composed: true, bubbles: true for custom events crossing shadow boundary

Common Issues

Each issue, with its fix.

IssueFix
Cross-shadow aria-labelledbyElementInternals.ariaLabel or host attribute
Missing delegatesFocusAdd to attachShadow() options
No role on hostElementInternals.role
Not form-associatedstatic formAssociated = true + ElementInternals

Output contract

Return only JSON matching skills/a11y-core/schemas/findings.schema.json. No prose, no summary, no restated instructions. One object, one array of findings.

Shared rules, dispatch contract and schemas: skills/a11y-core/SKILL.md. Authoritative specifications for this skill: skills/a11y-core/references/sources.md.

저장한 Skills