# vidstack/player

UI components and hooks for building video/audio players on the web. Robust, customizable, and accessible. Modern alternative to JW Player and Video.js.

Repository: https://github.com/vidstack/player
Canonical: https://ross.abutalabs.com/products/player
Homepage: https://vidstack.io
Language: TypeScript
License: MIT
License Family: permissive
Topics: player, web-components, html, javascript, hls, audio, video, analytics, typescript, media, accessibility, react, solid-js, svelte, ui, vimeo, vue, youtube
Last push: 2026-08-21T18:57:02+00:00

## Health v2 (maintenance only)
Score: 76/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 35, longevity 100
- inputs: {"age_days": 2046, "days_push": 12, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 3667, forks 225 (observed 2026-08-28T04:08:13.398079+00:00)

## What it is
Vidstack Player is a TypeScript library of UI components and hooks for building customizable, accessible video and audio players on the web. It supports multiple frameworks (React, Vue, Svelte, Solid, Angular, Web Components) and media providers including HLS, DASH, YouTube, Vimeo, and Remotion.

## Use cases
- embed a customizable video player on my website
- build an accessible video player with captions and keyboard navigation
- play HLS or DASH streams in the browser
- replace Video.js or JW Player with a modern alternative
- add a YouTube or Vimeo player with a custom UI in React
- style a media player with Tailwind CSS or CSS data attributes

## When to choose
- you need a production-grade, accessible media player across multiple JS frameworks
- you want pre-built layouts plus deep customization via components, hooks, and CSS
- you need support for diverse providers like HLS, DASH, YouTube, and Vimeo

## When to avoid
- you only need a simple native <video> tag with default controls
- you must support legacy browsers without Custom Elements V1 support
- you need a native mobile player outside the web platform

## Facets
- artifact type: library
- maturity: active
- function: ui-components, video-processing, audio-processing, accessibility, state-management, analytics
- domain: web-development, frontend, media, accessibility
- platform: browser, cross-platform
- tags: video-player, audio-player, web-components, hls, dash, react, vue, svelte, solid, youtube, vimeo, media-player, plyr-successor, web-server

## Member repositories
- vidstack/player (main) score 76

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:13.398079+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:31:32.030815+00:00, confidence not recorded.
  - readme: https://github.com/vidstack/player (fetched 2026-08-28T04:08:13.398079+00:00, sha 3c079cc6322a)
  - homepage: https://vidstack.io (fetched 2026-08-29T09:25:51.491292+00:00, sha 65da48a70948)
  - site_page: https://vidstack.io/docs/player/getting-started/installation/angular?bundler=none&provider=video&styling=default-layout (fetched 2026-08-29T09:25:51.512784+00:00, sha 094e0de4bf09)
  - site_page: https://vidstack.io/docs/player/getting-started/installation/react?bundler=none&provider=video&styling=default-layout (fetched 2026-08-29T09:25:51.514641+00:00, sha c243369ecce0)
  - site_page: https://vidstack.io/docs/player (fetched 2026-08-29T09:25:51.501078+00:00, sha 405bd63021a8)
  - site_page: https://vidstack.io/docs/player/api/hooks/use-state (fetched 2026-08-29T09:25:51.503026+00:00, sha d54381b819e9)
  - site_page: https://vidstack.io/docs/player/styling/introduction (fetched 2026-08-29T09:25:51.504633+00:00, sha afeb6ec6a01a)
  - site_page: https://vidstack.io/docs/player/getting-started/installation/javascript?bundler=none&provider=video&styling=default-layout (fetched 2026-08-29T09:25:51.506383+00:00, sha 77502651b0c9)
  - site_page: https://vidstack.io/docs/player/getting-started/installation/web-components?bundler=none&provider=video&styling=default-layout (fetched 2026-08-29T09:25:51.508829+00:00, sha ea26a5f0a8af)
  - site_page: https://vidstack.io/docs/player/getting-started/installation/cdn?bundler=none&provider=video&styling=default-layout (fetched 2026-08-29T09:25:51.510951+00:00, sha 760ca6d2d361)
- Data as of 2026-08-30T08:39:29.467469+00:00.
