Releases: Abdullah-Masood-05/vigilo-wasm
Releases · Abdullah-Masood-05/vigilo-wasm
Release list
v1.0.1
In-browser exam proctoring: face detection, head pose, gaze tracking and prohibited-object detection, fused by the vigilo-core temporal engine compiled to WebAssembly. Video frames never leave the tab.
Links
- Documentation: https://abdullah-masood-05.github.io/vigilo-wasm/
- npm package: https://www.npmjs.com/package/vigilo-wasm
Install
npm install vigilo-wasm onnxruntime-webWhat's in 1.0.x
wasm-pack --target webbuild. The generated module exposes an explicitinitWasm()that takes a URL,Responseor byte array, so it works under Vite, Next.js, Webpack, Bun or a plain<script type="module">rather than requiring a bundler extension.- Four coordinated models run through
onnxruntime-web(WebGPU with a SIMD fallback): YuNet 2023mar for faces, MobileNetV3-Small for head pose, MobileOne-S0 (L2CS) for gaze, YOLOX-Nano for prohibited objects. - Rust does everything that is not a matrix multiply — letterboxing, aspect-ratio scaling, NCHW packing, anchor decoding, NMS, gaze gating and the temporal fusion state machine — so browser and desktop replay the same signal stream to the same violation events.
VigiloBrowserscheduler with a self-correcting tick and per-model cadences (pose, gaze, 1 Hz object detection), plusCameraSourceforgetUserMedia→ canvas →ImageDatacapture.- Zero-copy buffer hand-off between the canvas, Rust's scratch frame buffer and the ONNX input tensor.
Fixed in 1.0.1
- Documentation only: Mermaid architecture diagrams rendered their labels in an SVG
<foreignObject>, which Mermaid sized from its own text measurement while the browser laid the text out with the site's typography. Where the two disagreed, labels wrapped and the extra line was clipped. Labels are now SVG<text>, measured from the element that is actually drawn.
No runtime code changed between 1.0.0 and 1.0.1.