31 lines
916 B
Bash
31 lines
916 B
Bash
#!/bin/bash
|
|
# Build WASM packages for the dual-modal pose estimation demo.
|
|
# Requires: wasm-pack (cargo install wasm-pack)
|
|
#
|
|
# Usage: ./build.sh
|
|
#
|
|
# Output: pkg/ruvector_cnn_wasm/ — WASM CNN embedder for browser
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
VENDOR_DIR="$SCRIPT_DIR/../../vendor/ruvector"
|
|
OUT_DIR="$SCRIPT_DIR/pkg/ruvector_cnn_wasm"
|
|
|
|
echo "Building ruvector-cnn-wasm..."
|
|
wasm-pack build "$VENDOR_DIR/crates/ruvector-cnn-wasm" \
|
|
--target web \
|
|
--out-dir "$OUT_DIR" \
|
|
--no-typescript
|
|
|
|
# Remove .gitignore so we can commit the build output for GitHub Pages
|
|
rm -f "$OUT_DIR/.gitignore"
|
|
|
|
echo ""
|
|
echo "Build complete!"
|
|
echo " WASM: $(du -sh "$OUT_DIR/ruvector_cnn_wasm_bg.wasm" | cut -f1)"
|
|
echo " JS: $(du -sh "$OUT_DIR/ruvector_cnn_wasm.js" | cut -f1)"
|
|
echo ""
|
|
echo "Serve the demo: cd $SCRIPT_DIR/.. && python3 -m http.server 8080"
|
|
echo "Open: http://localhost:8080/pose-fusion.html"
|