Making really tiny WebAssembly graphics demos
2019-06-07I’ve been studying WebAssembly recently, which has included porting some of my
m4vga graphics demos. I started with the Rust and WebAssembly
Tutorial, which has you use fancy tools like wasm-pack
,
wasm-bindgen
, webpack
, and npm
to produce a Rust-powered webpage.
And that’s great! But I want to know how things actually work, and those tools put a lot of code between me and the machine.
In this post, I’ll show how to create a simple web graphics demo using none of those tools — just hand-written Rust, JavaScript, and HTML. There will be no libraries between our code and the platform. It’s the web equivalent of bare metal programming!
The resulting WebAssembly module will be less than 300 bytes. That’s about the same size as the previous paragraph.