ERIS: File Sharing Demo

This demo allows you to upload files which are then encoded using ERIS. Blocks are stored in an IndexedDB database. You can encode and decode files from here.

Unfortunately, there is no networking, yet. Blocks of encoded content are only stored locally in your browser. To get this working we need to use the Goblins WebSocket and possibly Prelay netlayers. Happy hacking!

We use the JavaScript-Promise Integration Proposal for WebAssembly, allowing WASM code to call JavaScript async functions that return promises. Execution of the WebAssembly module is supsended until the promise is resolved.

It does require the very new and not yet fully supported JavaScript-Promise Integration (JSPI) to be activated. For fairly recent Firefox builds (August 2026) you might need to enable the javascript.options.wasm_js_promise_integration in about:config.

Encode


    

Decode