Yury Delendik edited this page Jul 26, 2013 · 26 revisions



Shumway is an HTML5 technology experiment that explores building a faithful and efficient renderer for the SWF file format without native code assistance. Our goal is to create a general-purpose, web standards-based platform for parsing and rendering SWFs. Integration with Firefox is a possibility if the experiment proves successful.

Online Demos

Online demos and links to an installable Firefox extension can be found at http://mozilla.github.com/shumway/

The Shumway Community

Shumway is an open source community project created by Mozilla Research. Most development discussion happens on IRC:

Server: irc.mozilla.org Channel: #shumway

For more detailed discussions, there is also a mailing list/forum.

See also Frequently Asked Questions.

Getting the source

The source code for Shumway and its submodules can be cloned the following way:

cd ~
git clone --recursive https://github.com/mozilla/shumway.git Shumway

Development Environment

If you are planning to contribute or try the examples, please install:

The additional utils (such as Tamarin AVM Shell, SpiderMonkey JS shell, etc.) are required for AVM2 engine execution, testing, and building the extension, and can be installed by running:

make install-utils

Build System

Overview of the Build System


For impatient, see Running the examples. Please notice that you have to finish setting up the environment before you run the examples. See also Debugging and Configuring Shumway.


See Running tests for more information.

Firefox Extension

Firefox 18+ supports API for JavaScript extensions to create native plugins previews for specific mime type (Bug 776208). To create the extension, see Building Firefox Extension. See also Debugging and Configuring Shumway.

Issue Tracking

The shumway project is currently in active development and many SWF features are not yet implemented. Tracking all the missing features is not a goal at this time, and so we discourage filing every issue using the github issue tracker. We encourage interested developers to submit bug fixes and new features using github pull requests. If you need help figuring out how to start, please ask on IRC or the mailing list.


AVM2: Action Script 3 VM (AVM2)

Getting Started with AVM2