Build your player.
UI components and hooks for building media players on the web. Robust, customizable, and accessible.
works seamlessly with
Components.
Built to compose.
Buttons
T o g g l e B u t t o n
Design.
Built to be styled.
Layouts.
Built to ship.
Providers.
Built to adapt.
State.
Built to be reactive.
Accessible.
Built for all.
-
Informative screen reader updates for media state changes.
Learn more -
Clear semantic labels and roles for screen readers.
Learn more -
Consistent and customizable captions across browsers.
Learn more -
Multitrack audio support for i18n and descriptions.
Learn more -
Full keyboard navigation support and shortcuts.
Learn more -
Robust focus management and clear indicators.
Learn more -
Accessible contrasts and color scheme options.
Learn more -
Popover text to provide more helpful descriptions.
Learn more -
Reduced motion support for vestibular disorders.
Learn more -
Tailored user settings for all player preferences.
Learn more -
WCAG 2.2, WAI-ARIA, and CVAA spec-compliant.
Learn more
Features.
Built to satisfy.
-
First-class TS support including types for multiple frameworks.
-
Comprehensive set of props, methods, events, and more.
Learn more -
Modular and reusable player components, ready to compose.
Learn more -
Convenient player hooks for React.
Learn more -
Robust player architecture tested at scale at Reddit.
Learn more -
Built-in accessibility features.
Learn more -
Support for multiple JS frameworks.
Learn more -
Auto-setup for various bundlers including Vite, SvelteKit, Nuxt, and more.
Learn more -
IDE plugin for auto-completions and docs.
-
Load various source types including HLS, DASH, and more.
Learn more -
Extensive live streaming support and API.
Learn more -
Server-side rendering support.
-
Easily manage reading and updating media state.
Learn more -
Customizable headless components, style your way.
Learn more -
Seamless Tailwind integration with our plugin and components.
Learn more -
Use production-ready layouts or build your own.
Learn more -
Light and dark mode support.
Learn more -
Custom language translations support.
Learn more -
Rich set of normalized media events.
Learn more -
Trace events back to their origin.
Learn more -
Specify when media should begin loading.
Learn more -
Customizable captions with support for various formats.
Learn more -
Easily navigate content sections.
Learn more -
Preview and navigate content with images.
Learn more -
Trim start and end of media client-side.
Learn more -
Save player and media settings.
Learn more -
Perform actions based on user gestures.
Learn more -
Control player state and components with keyboard input.
Learn more -
Normalized API across browsers and providers.
Learn more -
Mutli-task with mini floating players.
Learn more -
Rotate screen for an immersive experience.
Learn more -
Apply gain to output to increase volume.
Learn more -
Manage multiple audio tracks.
Learn more -
Manage captions, subtitles, chapters, and more.
Learn more -
Manage multiple playback video qualities.
Learn more -
Play media on a remote device such as a TV.
Learn more
Icons.
Built by us.
Open Source.
Built transparently.
-
UI component library for building video and audio players for the web.
Learn more -
Modern media captions parser and renderer. Supports VTT, SRT, and SSA.
Learn more -
Beautifully hand-crafted collection of media icons designed for players.
Learn more -
Simple, lightweight, accessible and customizable media player.
Learn more -
Customizable, extensible, accessible and framework-agnostic media player.
Learn more
Community.
Built for us.
We're a community of frontend devs working with video & audio. Join in on the discussions, share your designs and knowledge, ask for help, and connect with others building awesome experiences.