vite-wasm-zig
TypeScript icon, indicating that this package has built-in type declarations

0.1.1 • Public • Published

npm package zig language zig language

vite-wasm-zig

Install

yarn add -D vite-wasm-zig

Usage

// vite.config.{js, ts}
import zig from 'vite-wasm-zig';

export default defineConfig(({ mode }) => {
    return {
        plugins: {
            zig({
                // Enable this option require `wasm-opt` installed on your $PATH.
                optimize: mode === 'production',
                // Other options goes here
            })
        }
    }
}
// main.zig

export fn add(a: i32, b: i32) i32 {
    return a + b;
}
// index.{js,ts}
import init from "./main.zig?init";

function someFunc() {
  const importObject = {
    /* ... */
  };

  init(importObject).then((instance) => {
    console.log(instance.exports.add(1, 10));
  });
}
// OR
// This plugin support SSR, so top level await is OK
const instance = await init(importObject)
console.log(instance.exports.add(1, 10));
export default instance.exports;

With Typescript

Add to tsconfig.json:

{
  "types": ["vite/client", "vite-wasm-zig/client"]
}

Semver

Until 1.0 release, this package don't follow Semver for versioning

Lisence

MIT

/vite-wasm-zig/

    Package Sidebar

    Install

    npm i vite-wasm-zig

    Weekly Downloads

    0

    Version

    0.1.1

    License

    MIT

    Unpacked Size

    16.6 kB

    Total Files

    9

    Last publish

    Collaborators

    • langbamit