vite-plugin-assemblyscript
Vite plugin that turns AssemblyScript import into a WebAssembly Data URL.
Tested with AssemblyScript 0.21.x
Motivation
- surma/rollup-plugin-assemblyscript uses
emitFilewhich it unsuitable as a Vite plugin in dev mode. - olivierchatry/vite-plugin-assemblyscript does not work with AssemblyScript 0.21.x due to breaking API changes. Not possible to specifiy import object.
Usage
- Install
assemblyscript - Copy
vite-plugin-assemblyscript.jsinto your own project. There is no NPM release. The existing NPM package of the same name is not mine and does not work. - Add to
vite.config.js
vite.config.js
import Assemblyscript from "./vite-plugin-assemblyscript";
export default {
...
plugins: [Assemblyscript()],
};add.as
export function add(x: i32, y: i32): i32 {
return x + y;
}index.js
import wasmDataUrl from "./add.as";
const module = await WebAssembly.compileStreaming(fetch(wasmDataUrl))
const instance = await WebAssembly.instantiate(module, {})
console.log(instance.exports.add(1, 2))StackBlitz demo: https://stackblitz.com/edit/vitejs-vite-dwpseg?file=index.html