Magic with WebAssembly and webR
summary
TypeScript library exposes WebAssembly-built R running in a web worker and returns proxied R objects (S-expression ids) so JavaScript can grab 1729, invoke R functions from JS as promises, and convert nested JS objects into R lists. Data moves both ways (2js method converts values), communication is message-passed, and a service worker can route Shiny traffic into the local webR worker for Shinylive. Performance is near native (claimed ~80%) and the demos work live.
AI-written summary · about
chapters (13)
- 0:00Intro
- 0:35What is Web
- 1:25WebAssembly
- 2:09Why webar
- 3:08Overview
- 3:35Mind Reading
- 5:38Conjuring variables
- 7:48New workflow
- 9:29How does it work
- 10:38Working with objects
- 11:33SS number
- 12:55Service Workers
- 14:42Questions
related talks
05mWebR: R compiled for WebAssembly and running in the browser
05mWebR: R compiled for WebAssembly and running in the browser
44mJavaScript in WebAssembly? Why and How
27mWebAssembly for Performant Interactivity
30mWhy Should You Consider JavaScript on WebAssembly?
39mWebAssembly for the rest of us
16mWhy WebAssembly
41mCreating High-Performance Web Apps with WebAssembly
