Skip to content
The HTML5 Media Framework
JavaScript HTML CSS Other
Latest commit 8ae202a @ScottDowne ScottDowne Merge pull request #441 from pculture/master
Removed dependency on deprecated Youtube data API v2.
Failed to load latest commit information.
build Simplified unit tests and added warning being thrown by lint to its i…
demos/semantic_video Fix bug 891168 - Remove Twitter plugin
effects/applyclass [#826] Removed preload=none in the applyclass html file. Also did a b…
ie8 Fix Bug 977087 - Fix custom event shim for IE8.
modules Added the possibility to specify the id of the document element that …
parsers Added the possibility to specify the id of the document element that …
players Fix bug 891168 - Remove Twitter plugin
plugins Fix CRLF
test Fix CRLF
tools Fix CRLF
unsupported [#924] Added a toString option for the majority of our plugins. Disre…
wrappers Merge pull request #441 from pculture/master
.gitattributes Fix CRLF
.gitignore [#665] Adds .DS_Store to .gitignore
AUTHORS [#1238] Fix typo in matt's name Bug 1237 - Add CHANGELOG to repository
LICENSE added license [#263 state:peer-review]
LICENSE_HEADER Add license header to all *.min.js files.
Makefile [#889982] Ensure wrappers are included in the correct order.
bower.json 1.5.10
example.html Merge branch '313' into 0.3
popcorn.js Fix Bug 890250 - Get ie8 shim working on most recent popcorn. Update
tests.conf jwplayer on popcorn side, so far.


Mozilla's HTML5 Video Framework:


Popcorn.js is Mozilla's HTML5 video and media library for the open web. It allows web developers, filmmakers, artists, designers and others to easily create timeline based web productions. Popcorn.js helps simplify media API and implementation differences between browsers and includes a powerful event system and a rich plugin architecture and plugins.

Popcorn.js can be used with almost any media type you can imagine, from HTML5 audio and video, to YouTube and Vimeo, to SoundCloud, etc. Popcorn.js also has plugins to allow content from popular web sites and services to be integrated easily, for example, Wikipedia, Facebook, Google Maps, etc.

Anything you can do on the web can be turned into a Popcorn.js plugin, and become part of a timeline-based web experience. Popcorn.js breaks video out of the box and allows media to fully interact with the rest of the web.

Try a live code example here.


The Popcorn.js community is a mix of developers, filmmakers, artists, and everything in between. If you are interested in using Popcorn.js or helping us build it, you can use one or more of the following:

For Developers

You can follow the project's bugs and activity here.

Project workflow and developer guidelines are available here.

For Plugin Authors

Popcorn.js offers a powerful plugin architecture. Plugins are a way for developers to wrap web functionality and allow it to be placed on a timeline, responding to a point in a video or other media resource.

Take a look at our growing gallery of officially supported plugins.

Have you built a cool plugin, or have an idea for one? Let us know!


Popcorn.js is made available under the MIT License.


Popcorn.js is built and maintained by a growing community, with the support of:


A changelog can be found here.

Something went wrong with that request. Please try again.