multiavatar 1.0.7

Deterministic multicultural avatar generator — pure Rust port of multiavatar.js with SVG/PNG/JPEG/GIF/favicon/ICO/data-URI outputs; part library embedded in the binary, no runtime files
Documentation
# 一键构建 wasm 浏览器包(根级 scripts/,输出 wasm/dist)
# 前置:rustup target add wasm32-unknown-unknown;wasm-bindgen-cli 与 Cargo.lock 锁定版本一致
# 用法:powershell -NoProfile -ExecutionPolicy Bypass -File scripts/build-wasm.ps1(或 cd wasm && npm run build)
$ErrorActionPreference = "Stop"
$root = Split-Path -Parent $PSScriptRoot

Write-Host "[1/3] cargo build --target wasm32-unknown-unknown (release)"
Push-Location $root
try {
    cargo build --release --target wasm32-unknown-unknown
    if ($LASTEXITCODE -ne 0) { throw "cargo build failed ($LASTEXITCODE)" }
} finally {
    Pop-Location
}

Write-Host "[2/3] wasm-bindgen -> wasm/dist"
$wasm = Join-Path $root "target\wasm32-unknown-unknown\release\multiavatar.wasm"
$dist = Join-Path $root "wasm\dist"
New-Item -ItemType Directory -Force -Path $dist | Out-Null
wasm-bindgen $wasm --target web --out-dir $dist
if ($LASTEXITCODE -ne 0) { throw "wasm-bindgen failed ($LASTEXITCODE)" }

Write-Host "[3/3] done"
Get-ChildItem $dist -File | ForEach-Object { "{0,-22} {1,8:N1} KB" -f $_.Name, ($_.Length / 1KB) }