videojs-player is a modern, framework-agnostic video playback component built on top of Video.js that provides seamless integration with both Vue 3 and React applications. It abstracts the complexity of working directly with Video.js by exposing a unified component interface that handles initialization, configuration, and lifecycle management internally. The library is written in TypeScript and designed to be highly responsive, supporting the majority of Video.js configuration options while adapting them to different frontend frameworks. One of its main strengths is its flexibility, allowing developers to fully customize the player’s control panel, behavior, and interaction patterns through props, slots, and event hooks. It also provides a rich event system that exposes playback states such as play, pause, seek, and ready, enabling fine-grained control over user interactions.
Features
- Framework support for both Vue 3 and React environments
- Full compatibility with Video.js configuration and plugin ecosystem
- Customizable control UI using slots and component composition
- Comprehensive event system for playback lifecycle handling
- Support for advanced streaming formats like HLS, DASH, and FLV
- TypeScript-based implementation for strong typing and maintainability