Skip to content

feat(ui): add accessible AudioPlayer - #511

Draft
bntvllnt wants to merge 2 commits into
mainfrom
feat/issue-473-audio-player
Draft

feat(ui): add accessible AudioPlayer#511
bntvllnt wants to merge 2 commits into
mainfrom
feat/issue-473-audio-player

Conversation

@bntvllnt

@bntvllnt bntvllnt commented Sep 7, 2026

Copy link
Copy Markdown
Collaborator

Closes #473

Summary

  • add a URL-backed AudioPlayer with native playback, seek, time labels, optional transcript, captions, and rate selection
  • scope playback keyboard shortcuts to the playback button and preserve native slider controls
  • publish the component through the registry with its a11y keyboard map and committed visual baseline

Verification at 19853c00d9e4eb40190e3706e2741b81c085ee1c

  • pnpm -F @vllnt/ui exec eslint src/components/audio-player/audio-player.tsx src/components/audio-player/use-audio-player.ts src/components/audio-player/audio-player.test.tsx src/components/audio-player/audio-player.visual.tsx (pass; visual fixture is intentionally ignored by ESLint)
  • pnpm -F @vllnt/ui test:once -- audio-player.test.tsx (pass: 319 files, 1678 tests)
  • pnpm -F @vllnt/ui exec tsc --noEmit --project tsconfig.build.json (pass)
  • pnpm -F @vllnt/ui exec tsx scripts/check-story-coverage.ts and pnpm -F @vllnt/ui exec tsx scripts/verify-stories.ts (pass: 314 components)
  • pnpm -F @vllnt/ui-registry registry:integrity (pass: 314 items)

Remaining gates

  • Draft pending independent review, exact-head CI, and the required workspace build/lint/test gates.
  • A committed Chromium baseline is included. A repeat local visual run was not performed because a shared Playwright server already occupied port 3100; it was not terminated or reused.

@vllnt-pilot

vllnt-pilot Bot commented Sep 7, 2026

Copy link
Copy Markdown

ntk preview

App Status Preview
ui-registry Failed: build ui-registry: build failed: exit status 1
storybook Failed: build storybook: build failed: exit status 1

Built from 19853c00 · public + no-index (ADR-082) · torn down on close

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(media): accessible AudioPlayer component

1 participant