cookpete/react-player

A React component for playing a variety of URLs, including file paths, YouTube, Facebook, Twitch, SoundCloud, Streamable, Vimeo, Wistia and DailyMotion

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 44 minutes ago
Added to GitGenius on September 6th, 2026
Created on August 18th, 2015
Open Issues & Pull Requests: 62 (+0)
GitHub issues: Enabled
Number of forks: 1,201
Total Stargazers: 10,275 (+0)
Total Subscribers: 82 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 10.6 days
Mean response time: 111.8 days
90th percentile: 388.0 days
Tracked items: 169

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 98% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 3% of issues opened in the past year have been closed. Three people close 90% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 49
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 386 days
Stale 30+ days: 48
Stale 90+ days: 46

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (7)
  • enhancement (7)
  • PRs welcome (6)
  • Needs more info (4)
  • documentation (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

React Player is a React component for playing a variety of media URLs including file paths, HLS, DASH, YouTube, Vimeo, Wistia, and other streaming platforms.

The component solves the problem of integrating multiple media sources into a React application without building separate player implementations for each platform. It works by parsing the URL passed to it, loading the appropriate markup and external SDKs needed for that particular source, and exposing props to control playback and respond to events like buffering or media completion. The component supports lazy loading through code splitting, allowing developers to reduce their main bundle size by loading player code only when needed.

Developers should choose this tool when building applications that need to play media from multiple sources without maintaining custom integrations for each platform. It suits projects ranging from simple embedded video players to complex media applications that support diverse content sources. The component provides standard playback controls through props and handles the complexity of different platform APIs behind a unified interface.

The project is maintained by Mux and remains open source with a commitment to regular fixes and releases. The codebase is written in TypeScript and includes test coverage tracking. A demo page and migration guide are available for developers evaluating or upgrading the tool.