Early commit: both desktop and wasm support