Ruffle is an Adobe Flash Player emulator written in the Rust programming language. Ruffle targets both the desktop and the web using WebAssembly.
Ruffle is in the proof-of-concept stage and can currently run early Flash animations. ActionScript support is still forthcoming; for more info, read the project roadmap.
Building from source
Follow the official guide to install Rust for your platform.
cargo run --package=ruffle_desktop -- test.swf
Running the web demo
npm run serve
- Load indicated page in browser (usually http://localhost:8080)
Building the NPM package
If you have a collection of "real world" SWFs to test against, the scanner may be used to benchmark ruffle's parsing capabilities. Provided with a folder and an output filename, it will attempt to read all of the flash files and report on the success of such a task.
cargo run --package=ruffle_scanner -- folder/with/swfs/ results.csv
corecontains the core emulator and common code
desktopcontains the desktop client (uses
webcontains the web client (uses
scannercontains a utility to bulk parse swf files
Licensed under either of
- Apache License, Version 2.0 (LICENSE_APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE_MIT or http://opensource.org/licenses/MIT) at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.