ruqu-wasm 2.0.2

WebAssembly bindings for the ruQu quantum simulation engine
Documentation

ruqu-wasm - WebAssembly Quantum Simulation

Browser-compatible quantum circuit simulation. Supports up to 25 qubits in WASM (memory limit enforcement).

This crate provides wasm-bindgen bindings over ruqu-core and ruqu-algorithms, exposing a JavaScript-friendly API for building quantum circuits, running simulations, and executing quantum algorithms (Grover's search, QAOA MaxCut) directly in the browser.

Usage (JavaScript)

import { WasmQuantumCircuit, simulate, max_qubits, estimate_memory } from 'ruqu-wasm';

// Check limits
console.log(`Max qubits: ${max_qubits()}`);
console.log(`Memory for 10 qubits: ${estimate_memory(10)} bytes`);

// Build a Bell state circuit
const circuit = new WasmQuantumCircuit(2);
circuit.h(0);
circuit.cnot(0, 1);
circuit.measure_all();

// Simulate
const result = simulate(circuit);
console.log(result.probabilities);

Memory Limits

WASM operates under 32-bit address space constraints (~4GB max). A quantum state vector for n qubits requires 2^n * 16 bytes (complex f64 amplitudes). At 25 qubits this is ~512MB, which is a practical upper bound for browser environments.