Skip to content
This repository has been archived by the owner on Jul 3, 2019. It is now read-only.
jetvillegas edited this page Oct 22, 2014 · 35 revisions

Shumway

Overview

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://www.areweflashyet.com/

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:

After that run make bootstrap to setup tools such as node.js libraries, SpiderMonkey JS shell, and Tamarin avmshell. That will also build playerglobal library.

Additional utils might be needed:

  • For Tamarin's AVM2 tests:

    sudo apt-get install mercurial
    make -C utils/ install-tamarin-src install-tamarin-tests
    
  • Flex SDK tools:

    make -C utils/ install-flex-sdk
    

Big Picture

To find your way around the code and gain a better understanding of all the Shumway components see the Big Picture.

Build System

Overview of the Build System

Demos

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.

Tests

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.

Modules

AVM2: Action Script 3 VM (AVM2)

Getting Started with AVM2

Contributing