rustwasm/readme.md

13 lines
948 B
Markdown
Raw Normal View History

2024-11-25 03:52:52 +00:00
# rustwasm
A dead-simple, no-bundling, web-servable Rust/WASM/JS template.
"Hello, world" style.
For use in the Rust Ludus backend.
2024-11-25 04:15:16 +00:00
### Things to remember
* Use `js_sys` and `web_sys` for general JS and Web bindings.
* Ludus, however, speaks in JSON strings and requires a hand-written JS wrapper, which should make the whole JS interop thing much easier.
- For that, we use `serde_json`.
* The canonical reference for all this is https://rustwasm.github.io/wasm-bindgen/introduction.html.
* Look into what thi.ng does with Zig in its WASM packages: https://github.com/thi-ng/umbrella/tree/develop/packages, especially https://github.com/thi-ng/umbrella/tree/develop/packages/wasm-api.
- It's looking like `--target web` is the most appropriate to use in 2024, since they use ES modules and not CommonJS, which is what everything else uses (and necessitates the build step). See https://rustwasm.github.io/wasm-pack/book/commands/build.html.