A collection of JS module utilities written in Rust
Usage
The package is published to npm as a WebAssembly module. Install with:
$ npm install fmu
import { init, guessJsSyntax } from 'fmu'
// initialize wasm (MUST call this before any other APIs)
await init()
const code = `exports.foo = 'bar'`
console.log(await guessJsSyntax(code)) // "CJS"
Note: For Vite, you have to pass a custom URL to
init()
. For example:import { init } from 'fmu' import wasmUrl from 'fmu/wasm?url' await init(wasmUrl)
See examples for usage n different setups.
Development
Follow the official guide to install Rust. Also install wasm-pack to build Rust files into WebAssembly.
# Build wasm for dev (e.g. testing examples)
$ npm run dev
# Build wasm for publishing
$ npm run build
# Run unit and integration tests
$ cargo test
Sponsors
License
MIT