Skip to main content
Public
Files 29 items
.github
Jan 13, 2026
FOLDER Last modified by WebDev
build
Jan 13, 2026
FOLDER Last modified by WebDev
docs
Jan 13, 2026
FOLDER Last modified by WebDev
lang
Jan 13, 2026
FOLDER Last modified by WebDev
sandbox
Jan 13, 2026
FOLDER Last modified by WebDev
src
Jan 13, 2026
FOLDER Last modified by WebDev
test
Jan 13, 2026
FOLDER Last modified by WebDev
.babelrc 396 B
Jan 13, 2026
BABELRC Last modified by WebDev
.browserslistrc 150 B
Jan 13, 2026
BROWSERSLISTRC Last modified by WebDev
.editorconfig 239 B
Jan 13, 2026
EDITORCONFIG Last modified by WebDev
.gitignore 410 B
Jan 13, 2026
GITIGNORE Last modified by WebDev
.jsdoc.js 1.76 KB
Jan 13, 2026
JS Last modified by WebDev
.npmignore 136 B
Jan 13, 2026
NPMIGNORE Last modified by WebDev
.nvmrc 3 B
Jan 13, 2026
NVMRC Last modified by WebDev
.remarkignore 13 B
Jan 13, 2026
REMARKIGNORE Last modified by WebDev
.remarkrc.js 2.75 KB
Jan 13, 2026
JS Last modified by WebDev
CHANGELOG.md 382.46 KB
Jan 13, 2026
MD Last modified by WebDev
CODE_OF_CONDUCT.md 111 B
Jan 13, 2026
MD Last modified by WebDev
COLLABORATOR_GUIDE.md 117 B
Jan 13, 2026
MD Last modified by WebDev
composer.json 271 B
Jan 13, 2026
JSON Last modified by WebDev
CONTRIBUTING.md 110 B
Jan 13, 2026
MD Last modified by WebDev
index.html 2.02 KB
Jan 13, 2026
HTML Last modified by WebDev
LICENSE 867 B
Jan 13, 2026
FILE Last modified by WebDev
package-lock.json 652.08 KB
Jan 13, 2026
JSON Last modified by WebDev
package.json 7.35 KB
Jan 13, 2026
JSON Last modified by WebDev
postcss.config.js 320 B
Jan 13, 2026
JS Last modified by WebDev
README.md 7.88 KB
Jan 13, 2026
MD Last modified by WebDev
rollup.config.js 8.3 KB
Jan 13, 2026
JS Last modified by WebDev
tsconfig.json 317 B
Jan 13, 2026
JSON Last modified by WebDev
README.md 7.88 KB

[![Video.js logo][logo]][vjs]

Video.js β€” Web Video Player & Framework

[![NPM][npm-icon]][npm-link]

Update: Major changes are planned for Video.js 10, expected in early 2026. You can follow the discussion and future direction here: πŸ‘‰ https://github.com/videojs/video.js/discussions/9035


Overview

Video.js is a powerful, full-featured, and open-source HTML5 video player framework designed for modern web applications. It provides a consistent and customizable playback experience across all major browsers, devices, and platforms, including desktops, mobile phones, tablets, and Smart TVs.

Out of the box, Video.js supports all commonly used web media formats, including adaptive streaming technologies such as HLS and DASH. Beyond its core functionality, Video.js can be extended through a large ecosystem of plugins, themes, and integrations, making it suitable for everything from simple embedded videos to large-scale streaming platforms.

Originally launched in May 2010, Video.js has grown into one of the most widely adopted video players on the web.

Adoption & Impact

Since its inception, Video.js has achieved impressive scale:

  • Used by millions of websites worldwide
  • (source: [BuiltWith][builtwith])

  • Delivers video to billions of end users every month via CDN-hosted builds
  • Supported by 900+ contributors to the Video.js core
  • Backed by hundreds of community-maintained plugins
  • πŸ‘‰ https://videojs.com/plugins/


    Table of Contents

  • Quick Start
  • Core Concepts
  • Customization & Plugins
  • Contributing
  • Code of Conduct
  • License
  • Sponsorship

  • Quick Start

    Thanks to the support of Fastly, Video.js is available via a free, globally distributed CDN, allowing you to get started in seconds.

    CDN Installation (Recommended for Beginners)

    Add the following tags to the of your HTML document:

    HTML
    1
    2
    <link href="//vjs.zencdn.net/8.23.4/video-js.min.css" rel="stylesheet">
    

    <script src="//vjs.zencdn.net/8.23.4/video.min.js"></script>

    This approach requires no build tools and is ideal for quick prototypes or static websites.


    Alternative Installation Methods

    Video.js can also be installed using several other methods depending on your workflow:

    npm (Recommended for Modern Web Apps)

    BASH
    1
    npm install video.js
    

    This is ideal for projects using bundlers like Webpack, Vite, or Rollup.

    unpkg CDN

    HTML
    1
    2
    3
    <!-- Latest version -->
    

    <link href="https://unpkg.com/video.js/dist/video-js.min.css" rel="stylesheet"> <script src="https://unpkg.com/video.js/dist/video.min.js"></script>

    <!-- Specific version --> <link href="https://unpkg.com/[email protected]/dist/video-js.min.css" rel="stylesheet"> <script src="https://unpkg.com/[email protected]/dist/video.min.js"></script>

    cdnjs

    HTML
    1
    2
    <link href="https://cdnjs.cloudflare.com/ajax/libs/video.js/8.23.4/video-js.min.css" rel="stylesheet">
    

    <script src="https://cdnjs.cloudflare.com/ajax/libs/video.js/8.23.4/video.min.js"></script>

    You can also download source files directly from the πŸ‘‰ GitHub Releases


    Basic Usage

    Using Video.js is as simple as enhancing a standard HTML element.

    Automatic Setup

    Add the video-js class and a data-setup attribute:

    HTML
    1
    2
    3
    4
    <video
    

    id="my-player" class="video-js" controls preload="auto" poster="//vjs.zencdn.net/v/oceans.png" data-setup='{}'>

    <source src="//vjs.zencdn.net/v/oceans.mp4" type="video/mp4" /> <source src="//vjs.zencdn.net/v/oceans.webm" type="video/webm" /> <source src="//vjs.zencdn.net/v/oceans.ogv" type="video/ogg" />

    <p class="vjs-no-js"> To view this video, please enable JavaScript and use a browser that <a href="https://videojs.com/html5-video-support/" target="_blank"> supports HTML5 video </a>. </p> </video>

    When the page loads, Video.js automatically detects the element and initializes the player.


    Manual Initialization

    If you prefer full control, omit data-setup and initialize the player in

    JAVASCRIPT
    1
    var player = videojs('my-player');
    

    You can also pass configuration options and a callback:

    JAVASCRIPT
    1
    2
    3
    4
    var options = {
    

    autoplay: false, controls: true, responsive: true };

    var player = videojs('my-player', options, function onReady() { videojs.log('Player is ready');

    this.on('ended', function () { videojs.log('Playback finished'); }); });

    Learn more about available configuration options here: πŸ‘‰ [Video.js Options Guide][options]


    Core Concepts

  • HTML5 First: Built on native browser capabilities
  • Adaptive Streaming: Native support for HLS & DASH
  • Cross-Platform: Desktop, mobile, tablet, Smart TV
  • Accessibility: ARIA support and keyboard navigation
  • Performance: Optimized playback with CDN support

  • Customization & Plugins

    Video.js is designed to be highly extensible:

  • Custom skins and themes
  • Playback analytics
  • DRM integrations
  • Advertising (IMA, VAST, VPAID)
  • Casting (Chromecast, AirPlay)
  • Interactive overlays
  • Explore the plugin ecosystem: πŸ‘‰ https://videojs.com/plugins/


    Contributing

    Video.js is a community-driven, open-source project. Contributions of all kinds are welcome, including:

  • Bug fixes
  • Documentation improvements
  • Feature proposals
  • Plugin development
  • Please read the full πŸ‘‰ [Contributing Guide][contributing]

    Project governance is handled by the Video.js Technical Steering Committee (TSC): https://github.com/videojs/admin/blob/main/GOVERNANCE.md

    All contributions are made under the Apache 2.0 License, and no CLA is required. Contributors agree to the Developer’s Certificate of Origin (DCO 1.1).


    Code of Conduct

    This project follows a strict πŸ‘‰ [Contributor Code of Conduct][coc]

    All participants are expected to uphold respectful and inclusive behavior.


    License

    Video.js is licensed under the Apache License, Version 2.0.

    β€œVideo.js” is a registered trademark of [Brightcove, Inc.][bc]


    Sponsorship

    Development and maintenance are supported by the Corporate Shepherd role:

  • 2010–2012: Zencoder Inc.
  • 2013–2025: [Brightcove Inc.][bc]
  • 2025–Present: [Mux Inc.][mux]
  • Additional support:

  • Fastly β€” CDN hosting
  • BrowserStack β€” Cross-browser testing
  • Netlify β€” Website hosting

  • Resources & Links

  • 🌐 Website: https://videojs.com
  • πŸ“š Documentation: https://docs.videojs.com
  • πŸ’¬ Slack Community: https://slack.videojs.com
  • πŸ“¦ npm Package: https://www.npmjs.com/package/video.js

  • [logo]: https://videojs.com/logo-white.png [vjs]: https://videojs.com [npm-icon]: https://nodei.co/npm/video.js.png?downloads=true&downloadRank=true [npm-link]: https://nodei.co/npm/video.js/ [options]: https://videojs.com/guides/options/ [plugins]: https://videojs.com/plugins/ [docs]: https://docs.videojs.com [fastly]: https://www.fastly.com [builtwith]: https://trends.builtwith.com/media/VideoJS [contributing]: https://github.com/videojs/admin/blob/main/CONTRIBUTING.md [coc]: https://github.com/videojs/admin/blob/main/CODE_OF_CONDUCT.md [bc]: https://www.brightcove.com [mux]: https://www.mux.com [browserstack]: https://browserstack.com [netlify]: https://www.netlify.com

    About

    Video.js - open source HTML5 video player


    512 files
    63 folders
    8.43 MB total size
    0 open issues
    0 open pull requests
    0 watchers
    0 forks
    0 stars
    704 views
    Updated Jan 13, 2026
    Languages
    JavaScript 58.7%
    HTML 37.1%
    CSS 3.1%
    SCSS 0.8%
    YAML 0.2%
    _redirects 0.0%
    LICENSE 0.0%
    Text 0.0%