~/talk

Native Web Apps: React and WebAssembly to Rewrite Native Apps

Talkat ReactiveConf 2019 · 2019-10-30..11-01· [webassembly, react]
slides:none on file

A C++ game editor gets rewritten with React + WebAssembly using Emscripten to compile the core to a ~3MB .wasm module with generated glue, exposing C++ classes via Web IDL. UI uses material UI, react-virtualized for lists of thousands, react-mosaic and react-sortable-tree, and pixi.js for the WebGL level editor. Memory requires manual destroy calls, cross-world calls are costly, build iteration drops from ~1 minute to ~10 seconds, and users end up preferring the hybrid Electron/browser app.

AI-written summary · about

  1. 0:00Introduction to GDevelop
  2. 1:04Legacy C++ architecture
  3. 2:58Migrating to web technologies
  4. 5:15Implementing WebAssembly
  5. 7:08Exposing C++ to JavaScript
  6. 10:21Memory management and testing
  7. 13:39Building complex React UI
  8. 17:01WebGL and performance tips
  9. 19:24Optimizing data interaction
  10. 21:02Maintaining a codebase
  11. 22:48Packaging and final results
  12. 24:31User feedback and conclusions
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.