https://ruffle.rs/
Ruffle
* What is Ruffle
* Usage
* Downloads
* Compatibility
* Get involved
* Demo
* Join Discord
* Blog
ruffle is a Flash Player emulator built in the Rust programming
language.
* Read more
* Wiki
* Demo
* Discord
Read more
What is Ruffle
Ruffle
Ruffle is a Flash Player emulator written in Rust. Ruffle runs
natively on all modern operating systems as a standalone application,
and on all modern browsers through the use of WebAssembly. Leveraging
the safety of the modern browser sandbox and the memory safety
guarantees of Rust, we can confidently avoid all the security
pitfalls that Flash had a reputation for. Ruffle puts Flash back on
the web, where it belongs - including browsers on iOS and Android!
Designed to be easy to use and install, users or website owners may
install the web version of Ruffle and existing flash content will
"just work", with no extra configuration required. Ruffle will detect
all existing Flash content on a website and automatically "polyfill"
it into a Ruffle player, allowing seamless and transparent upgrading
of websites that still rely on Flash content.
Ruffle is an entirely open source project maintained by volunteers.
We're all passionate about the preservation of internet history, and
we were drawn to working on this project to help preserve the many
websites and plethora of content that will no longer be accessible
when users can no longer run the official Flash Player. If you would
like to help support this project, we welcome all contributions of
any kind - even if it's just playing some old games and seeing how
well they run.
Usage
Usage
Installing on a website you own
Use an official Ruffle CDN, or download the 'standalone' version of
Ruffle from our downloads, and include the following JavaScript on
any page with Flash content:
OR
If you're using a local installation, you'll need to make sure your
web server is configured to serve .wasm files correctly, so please
visit our wiki if you need help with that.
For advanced usage, consult our documentation for our JavaScript API
and installation options.
Installing the browser extension
If you visit websites that have Flash content but aren't using
Ruffle, or you want to ensure you're using the latest and greatest
version of Ruffle on every website, then our browser extension is the
perfect thing for you!
The easiest way to install Ruffle on Chromium-based browsers such as
Chrome, Opera, and Brave is through the Chrome Web Store. The easiest
way to install Ruffle on Firefox is through addons.mozilla.org.
Ruffle is also available on the Microsoft Edge Addons store if you
prefer.
Chrome Web Store addons.mozilla.org Get it from Microsoft
These update whenever new builds release. We also offer unsigned
nightly extensions, but most people won't need them. If you do,
download the appropriate one for your browser from our downloads, and
then install it manually. Instructions for installation of nightly
Chrome/Firefox extensions available on our wiki. Safari instructions
below.
Safari
* Click the "Safari" link.
* Extract the downloaded tar.gz file somewhere.
* Open the extracted file and confirm the popup dialog box.
* Enable Safari > Preferences > Advanced > Show Develop menu in
menu bar.
* Enable Develop > Allow Unsigned Extensions.
* Enable the extension by checking the box in Safari > Preferences
> Extensions.
Note: Safari 14+ is required
Using the desktop application
If you want to run Flash content on your computer without a browser
in-between, we have native applications that will take full advantage
of your GPU and system resources to get those extra frames when
playing the original Meat Boy.
Currently most options are accessed via the command line, but we
intend to develop a GUI soon for ease of use. First, download the
appropriate executable for your operating system from our downloads.
To use Ruffle, simply double-click the executable and select the SWF
file you wish to play. Alternatively, type a command such as ruffle
filename.swf or ruffle https://example.com/filename.swf. We also
provide more advanced options if you wish to control how this file is
played. To view the full options available, run ruffle --help.
Downloads
Downloads
Ruffle is directly available as an extension in the Chrome Web Store,
on addons.mozilla.org, and in the Microsoft Edge Addons store:
Chrome Web Store addons.mozilla.org Get it from Microsoft
Latest Nightly Release
Desktop Browser Extension Website
* Linux * Firefox
* Mac OS * Chrome / Edge * Self Hosted
* Windows (32-bit) * Safari
* Windows (64-bit)
Ruffle is still in active development and we release nightly
development builds every day, as long as some code changed. Whilst we
try to keep nightly builds in working order, no guarantees can be
made.
Nightly Builds
Version Desktop Browser Website
Extension
* Linux
* Mac OS * Firefox
Nightly 2023-10-23 * Windows * Chrome / * Self
preview (32-bit) Edge Hosted
* Windows * Safari
(64-bit)
* Linux
* Mac OS * Firefox
Nightly 2023-10-22 * Windows * Chrome / * Self
preview (32-bit) Edge Hosted
* Windows * Safari
(64-bit)
* Linux
* Mac OS * Firefox
Nightly 2023-10-21 * Windows * Chrome / * Self
preview (32-bit) Edge Hosted
* Windows * Safari
(64-bit)
Compatibility
Compatibility
ActionScript
ActionScript is the language which Flash uses to make interactive
content. It is primarily split into two groups: "AVM 1" (ActionScript
1 & 2) and "AVM 2" (ActionScript 3).
AVM 1
AVM 1 is ActionScript 1 and ActionScript 2. All movies made before
Flash Player 9 (June 2006) will be made with AVM 1, and it remained
supported & available to authors until the release of Flash
Professional CC (2013).
We believe that most AVM 1 content will work, but we are aware of
some graphical inaccuracies and smaller bugs here and there. Please
feel free to report any issues you find that are not present in the
original Flash Player!
For in-depth details, please follow our AVM 1 tracking issue on
GitHub.
ActionScript 1 & 2 Language 95%
ActionScript 1 & 2 API 75%
AVM 2
AVM2 is ActionScript 3, which was introduced with Flash Player 9
(June 2006). After the release of Flash Professional CC (2013),
authors are required to use ActionScript 3 - making any movie made
after that date very likely to fall under this category.
Ruffle now has decent support for AVM 2, and it's our experience that
most games will work well enough to be played. We're still rapidly
improving in this area though, so bug reports about any broken
content are always welcome!
For in-depth details, please see our page outlining full AVM2
implementation details.
ActionScript 3 Language 70%
ActionScript 3 API 66%
Get involved
Get Involved
[?] How to help the project
We are an entirely open source project and do this for the sake of
preserving history, and we are not a large team at that. We
absolutely welcome and request your help if you are willing to
provide it. There are 4 main ways to help this project, and we will
be extremely grateful for any help provided.
[?] Contributing code
There are two main codebases in two languages: The actual player in
Rust, and the web interface & browser UI in JavaScript. If you have
any experience in either area and would like to assist, please feel
free to read our contribution guidelines, search for some issues to
tackle, and join our Discord to ask questions!
[?] Testing content
Arguably more important than contributing code is testing Ruffle out.
Go install Ruffle and try out your favourite games and animations.
Look for any difference from the official Flash Player, and report
your findings to us. If you find any bugs, changes of behaviour,
performance issues or any visual differences then please report those
to our bug tracker. If it runs flawlessly, come share the good news
on our Discord!
Sponsor the project
If you are able and willing to, we welcome any financial support to
help us fund the project going forward. With your help, we can afford
to spend more time dedicated to Ruffle, and pay for expenses such as
build servers and hosting. We accept donations and sponsorships
through Open Source Collective 501(c)(6). For more information, or to
view the options available for sponsoring the project, please visit
our Open Collective page.
Spread the word!
Is your favourite Flash-based site shutting down? Let them know they
can add one JavaScript file and keep it running! Feeling nostalgic
for some old Flash games? Go play some on Newgrounds with Ruffle
installed, and tell your friends about it! Maybe you're a streamer
and looking for some silly content? There's literally decades' worth,
now unlocked and accessible once more.
Diamond Sponsors
We'd like to thank all of our sponsors, who help make this project
possible. Below are our Diamond level sponsors, without whom we would
not be here. Thank you.
* Newgrounds.com
* CPMStar
* Sebastien Benard
* Crazy Games
* Cool Math Games
* The New York Times
* Armor Games
* Onda Educa
* TwoPlayerGames.org
* wowgame.jp
* Matt Roszak
* Doll Divine
* Movavi
* Kongregate
* Bubble Shooter
* Neopets
Want to join them? Sponsor Ruffle today!
* Ruffle
*
+ ruffle-rs
* Ruffle is a Flash Player emulator written in Rust. Ruffle targets
both desktop and the web using WebAssembly.