Mimir's transforms packaged for WebAssembly
This is a WebAssembly build of Mimir's transforms, suitable for use in Nodejs and browsers.
Initial setup
Install wasm-pack. The wasm-pack site recommends curling into your shell to install, but I prefer using cargo:
cargo install wasm-pack
Once wasm-pack is installed, you can build & test this package.
🛠️ Build packages for web and node
Command | Purpose | Directory |
---|
make dev_web | Create a dev build of the transforms for use in web browsers. | web |
make build_web | Create an optimized build of the transforms for use in web browsers. | web |
make dev_node | Create a dev build of the transforms for use in nodejs. | node |
make build_node | Create an optimized build of the transforms for use in nodejs. | node |
make clean | Clean the wasm builds' target directories. | node & web |
make publish | Clean, build, and publish to npm. Note: update the version number in Cargo.toml first! | node & web |
For more information about the commands, see the Makefile and wasm-pack build docs.
Using the nodejs package
Add the dependency:
npm i @rhcp/mimir_transforms
Import & use it:
import * as headingHash from "@rhcp/mimir_transforms";
console.log(headingHash.transform(#hello"));
Using the web package
npm i @rhcp/mimir_transforms_web
Import the package, initialize it, and log a transformed string.
import { default as init, headingHash } from "@rhcp/mimir_transforms";
await init();
console.log(headingHash("#hello"))
Please note that this example assumes you have a bundler which will resolve the name @rhcp/mimir_transforms
.
🔬 Running tests
wasm-pack test --headless --firefox
wasm-pack test --headless --chrome
wasm-pack test --headless --safari
wasm-pack test --node
Leave off --headless
to run the tests in a live browser.
Also see wasm-pack test docs.