A collection of HTMLMediaElement compatible elements and add-ons.
| Name | Description |
|---|---|
| custom-media-element | A custom element for extending the native elements <audio> or <video>. |
| media-tracks | Polyfill audio and video tracks with renditions. |
| castable-video | Cast your video element to the big screen with ease! |
<mux-player>↗ |
The Mux video player custom element. |
<mux-video>↗ |
The Mux video element w/ hls.js and Mux data built-in. |
<hls-video> |
A custom video element for hls.js. |
<dash-video> |
A custom video element for dash.js. |
<shaka-video> |
A custom video element for Shaka Player. |
<youtube-video> |
A custom video element for YouTube player. |
<tiktok-video> |
A custom video element for TikTok player. |
<vimeo-video> |
A custom video element for Vimeo player. |
<videojs-video> |
A custom video element for Video.js. |
<spotify-audio> |
A custom audio element for Spotify player. |
<wistia-video> |
A custom video element for Wistia player. |
<jwplayer-video> |
A custom video element for JW Player. |
<twitch-video> |
A custom video element for Twitch player. |
<cloudflare-video> |
A custom video element for Cloudflare Stream. |
<peertube-video> |
A custom video element for PeerTube player. |
The packages in this repo are distributed as ESNext — including modern JavaScript features like private class fields. This is intentional: these packages are designed to be imported and processed by your own bundler or build tool, which is responsible for transpiling to your target browsers.
If you need to support browsers that don't have these features natively (e.g. Safari < 14.1), configure your bundler to include these packages in its transpilation step and set your desired target (e.g. es2019).
Note: Unlike
media-chrome, which ships pre-transpiled toes2019, the packages in this repository are distributed as ESNext. You are responsible for configuring your build pipeline to handle any necessary transpilation for your target environments.