A drag-and-drop quantum circuit builder with a live state simulator, built with SceneryStack. Place gates on qubit wires and watch probabilities, amplitudes, Bloch spheres, and measurements update in real time.
- Build circuits by dragging gates or click-to-place; undo/redo and shareable URL encoding
- Standard gates (H, X, Y, Z, S, T, √X) plus parametrized Rx/Ry/Rz rotations
- Controls, CNOT, Toffoli, and SWAP columns for entanglement experiments
- Live CPU statevector simulation (≤ 5 qubits) driving four result panels
- Probabilities, amplitudes, drag-rotatable Bloch spheres, and measurement histogram
- English and French UI, projector color profile, and PWA support
npm install
npm run icons # generate PNG icons from public/icons/icon.svg
npm start # dev server → http://localhost:5173| Command | Description |
|---|---|
npm start / npm run dev |
Start Vite dev server |
npm run build |
Type-check + production build → dist/ |
npm test |
Run Vitest unit tests (includes memory-leak suite) |
npm run preview |
Preview the production build locally |
npm run check |
TypeScript type check |
npm run lint |
Biome lint check |
npm run format |
Auto-format all files |
npm run fix |
Lint + auto-fix |
npm run icons |
Regenerate PNG icons from public/icons/icon.svg |
npm run clean |
Remove dist/ |
| Tool | Version | Purpose |
|---|---|---|
| SceneryStack | ^3.0.0 | Simulation framework |
| Vite | ^8 | Build tool + dev server |
| TypeScript | ^7 | Type-safe JavaScript |
| Biome | ^2.5 | Linting + formatting |
| vite-plugin-pwa | ^1 | PWA + service worker |
GNU Affero General Public License v3.0 — see OpenLyceum org license.
See OpenLyceum contributing guidelines. Report bugs via GitHub Issues; use org issue templates.