Study how to parse the SWF binary file format in TypeScript as a reference for building your own binary media parsers.
Explore how Flash animation rendering was mapped to HTML5 Canvas drawing calls without any native plugin.
Read the codebase to understand how an ActionScript virtual machine can be implemented in JavaScript.
Use the archived source as a reference for packaging a complex parser as a browser extension with auto-update on merge.
| mozilla/shumway | gvergnaud/hotscript | btroncone/learn-rxjs | |
|---|---|---|---|
| Stars | 3,669 | 3,671 | 3,673 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | hard | easy | easy |
| Complexity | 5/5 | 3/5 | 2/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
This project is archived and no longer maintained, Flash itself was discontinued in 2020, so the code is primarily useful as a historical reference.
Shumway was a Mozilla research project that tried to play Flash files inside a web browser using only standard web technologies, with no plugins or native code required. Flash was a format used for animations, games, and interactive content on the web for many years. The goal of Shumway was to parse and render the SWF file format, which is what Flash content is stored in, entirely through JavaScript and HTML5. The project was community-driven and backed by Mozilla. At the time of its active development, it shipped as a Firefox extension that users could install to test it against Flash content they encountered on the web. The extension was updated automatically on every code merge, so testers always had the latest version. Mozilla noted that full integration into Firefox was a possibility if the experiment proved out. Contributing was straightforward: install the extension, try it on Flash files, and file issues for anything that broke or was not yet implemented. The codebase also had TODO comments throughout that served as a built-in task list for developers who wanted to jump in. The project used a mailing list and an IRC channel for discussion. The repository has been inactive for some time, as Flash itself was officially discontinued industry-wide in 2020.
An archived Mozilla research project that rendered Adobe Flash (SWF) content directly in the browser using JavaScript and HTML5 Canvas, no plugin required. Inactive since Flash was discontinued in 2020.
Mainly TypeScript. The stack also includes TypeScript, JavaScript, HTML5.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.