---
status: implemented
date: 2025-02-05
---
# Poster
Display component for video poster image. Shows before playback starts, hides after.
## Problem
Video players show a poster image before playback. Existing solutions (Media Chrome, Vidstack) either manage the image internally via `src` prop or expose complex state (`data-loading`, `data-error`, `data-hidden`, `data-visible`).
We want a simpler approach: expose minimal state (`data-visible`), let the user control the image.
## Solution
**HTML:** Wrapper element that accepts `
` as child.
**React:** Renders `
` directly — no wrapper needed.
Visibility: `visible = !playback.started`. The poster shows until playback starts. `started` persists — pausing doesn't reset it.
## Accessibility
**Wrapper (``):** No ARIA role needed. Custom elements have no implicit role, so there's no semantics to hide or override. Do not add `aria-hidden` — the poster image may be informative.
**Child (`
`):** User provides appropriate `alt` text. Whether a poster is informative or decorative is the author's judgment (per [WAI guidelines](https://www.w3.org/WAI/tutorials/images/decorative/)). This is an advantage over Media Chrome (which forces `aria-hidden="true"` on the internal image) and native `