1.4 KiB
epic, story, title, status
| epic | story | title | status |
|---|---|---|---|
| 9 | 9.1 | WASM Engine Integration | draft |
Epic 9 — Web App (React + WASM)
Goal: Zero-install web experience with real-time collaboration.
Story 9.1: WASM Engine Integration
As a web user, I want the CalcPad engine running natively in my browser via WebAssembly, So that I get full calculation fidelity without installing anything.
Acceptance Criteria:
Given the calcpad-engine Rust crate is configured with wasm-pack targets
When the WASM module is compiled with wasm-pack build --target web
Then a valid .wasm binary and JS glue code are produced
And the gzipped WASM bundle is less than 500KB
Given the web app is loaded in a browser When the WASM engine is initialized Then it is loaded inside a dedicated Web Worker thread And the main UI thread remains unblocked during computation
Given the WASM engine is running in a Web Worker
When the UI sends an evaluation request
Then communication occurs via postMessage serialization
And the worker returns the computed result back to the main thread via postMessage
Given the WASM engine is initialized in the worker When a user types a valid CalcPad expression Then the engine evaluates it with identical results to the native Rust engine And all supported operations (arithmetic, units, conversions, variables, functions) produce matching output