Skip to content

web: Add standalone single-file & self-contained HTML player - #25131

Open
lll69 wants to merge 1 commit into
ruffle-rs:masterfrom
lll69:player-sa
Open

lll69 wants to merge 1 commit into
ruffle-rs:masterfrom
lll69:player-sa

Conversation

@lll69

@lll69 lll69 commented Nov 8, 2026 •

Copy link
Copy Markdown

Description

Add a standalone HTML player that doesn't rely on any platform. This uses a webpack fork (webpack-packager) to help build a single-file, self-contained HTML.

Testing

Test whether the generated player.html file can play SWF, and generate a player that embeds SWF, without external js/wasm/swf files needed.

Checklist

  • I, a human, have self-reviewed this PR and fully understand the changes within.
  • I have made or updated tests where possible.
  • All of my commits are properly scoped, compile successfully, and pass all tests.
  • This PR does not make sense to split up into smaller PRs.
  • An LLM was involved in the authoring of this code.

@lll69 lll69 changed the title web: Add standalone HTML player web: Add standalone single-file & self-contained HTML player Nov 8, 2026
@kjarosh

kjarosh commented Nov 8, 2026

Copy link
Copy Markdown
Member

How does it differ from ruffle demo?

@lll69

lll69 commented Nov 8, 2026

Copy link
Copy Markdown
Author

The ruffle demo requires the internet to run and loads slowly when the internet connection is slow.
The standalone player version can run without the internet and only needs one HTML file to work, without requiring any external JS or WASM files. Plus, it's able to package the SWF file directly into the HTML.
Test version: https://github.com/lll69/ruffle-player-html-sa/releases

@torokati44

Copy link
Copy Markdown
Member

What about the embedded "SWF player" of the browser extension?

@lll69

lll69 commented Nov 8, 2026

Copy link
Copy Markdown
Author

In some situations, like on public PCs or for educational purposes, it might not be convenient to install the Ruffle browser extension. Also, some countries/regions block access to the Chrome Web Store, or the access might be slow.

@kjarosh

kjarosh commented Nov 8, 2026

Copy link
Copy Markdown
Member

The ruffle demo requires the internet to run and loads slowly when the internet connection is slow.

Yeah, that's when you try to use it as a website, but when you build it locally (the same way you do with your package) you can use it offline.

@lll69

lll69 commented Nov 8, 2026 •

Copy link
Copy Markdown
Author

Websites you build yourself can't run directly on file:// origins (for example, double clicking the HTML will not work). If someone wants to run SWF animations, they also need to run an HTTP server themselves, which is not convenient in some situations.

@lll69

lll69 commented Nov 8, 2026 •

Copy link
Copy Markdown
Author

The desktop version of Ruffle Player doesn't support Windows 7 or older, which are still used in some places, like schools. However, the latest web version of Ruffle Player can still run on Chrome/Edge 109 that’s compatible with Windows 7.

@n0samu

n0samu commented Nov 8, 2026

Copy link
Copy Markdown
Member

I think this should be a separate project, not merged into Ruffle. The use case is pretty niche

@lll69

lll69 commented Nov 8, 2026

Copy link
Copy Markdown
Author

I think this should be a separate project, not merged into Ruffle. The use case is pretty niche

this is a case #3008

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants