Why Rust for this application, though? You don't really need to be "close to the metal" in the frontend (and there's wasm overhead in any case), so it seems like it'd be better to go with something a bit higher-level, with GC etc, rather than fight with the borrow checker.