UNPKG

hash-wasm-rs

Version:

A WebAssembly library for computing file hashes, built with Rust.

73 lines (53 loc) 1.32 kB
# hash-wasm-rs A WebAssembly library for computing hashes, built with Rust. # Supported algorithms | Name | ---------------------------------------------- | BLAKE3 | MD5 | SHA: SHA-224, SHA-256, SHA-384, SHA-512 | SHA-3: SHA3-224, SHA3-256, SHA3-384, SHA3-512 # Installation ```bash pnpm add hash-wasm-rs ``` # HTML Example usage [Example large file hash calculation](./index.html) # Vite Example usage ```bash pnpm add vite-plugin-wasm ``` ### vite.config.ts ```javascript import { defineConfig } from "vite"; import wasm from "vite-plugin-wasm"; export default defineConfig(({ mode }) => ({ plugins: [wasm()], })); ``` ### app.vue ```javascript onMounted(async () => { try { const $hashWasmRs = await import("hash-wasm-rs"); const result = await $hashWasmRs.md5("Hello, world!"); console.log(result.hex); result.free(); } catch (error) { console.error("WASM error:", error); } }); ``` # Development ```bash # Build package WebAssembly library wasm-pack build --release # Build HTML WebAssembly library wasm-pack build --release --target web --out-dir pkg-web # Build WebAssembly library with SIMD support RUSTFLAGS="-C target-feature=+simd128" wasm-pack build --release --target web # Serve the demo page python3 -m http.server ``` ## LICENSE [MIT](./LICENSE)