A dependency-free, offline visual instrument for exploring ETQ in its 101-label and 303-state configurations. It reconstructs the declared E8-derived fixtures in the browser, then places clearly identified visual and audio receivers around them.
Launch the interactive spirograph and 3D atlas →
GitHub READMEs cannot execute JavaScript, so the image above is a deterministic preview. Select it to play with the full explorer on GitHub Pages, or run the same files locally with no internet connection.
Clone or download the repository and open index.html in a modern browser. There is no install step, CDN, framework, analytics service, or upload path.
For microphone input, serve the same directory on local loopback so the browser has a secure-context-compatible origin:
python3 -m http.server 8000Then open http://localhost:8000. Generated audio and local-file analysis can be used directly from index.html; browser microphone policy varies for file:// pages.
| Configuration | Basis | Structure shown | Exact closure |
|---|---|---|---|
| ETQ-101 | 101 selected E8-root labels | Two triality-fixed singlets plus 33 complete embedded-D4 triality three-cycles | 101-step selector display cycle |
| ETQ-303 | H101 ⊗ C³ = 303 states |
Each of the 101 labels paired with an independent external three-state fibre | 303-step CRT event orbit |
The ETQ-303 event address is
n ↦ (n mod 101, n mod 3)
Because 101 and 3 are coprime, all 303 state pairs are visited before closure. Steps 101 and 202 return to the same base-site index while landing on a different external fibre; step 303 restores both.
- Switch between ETQ-101 and ETQ-303 without reloading.
- Play, scrub, or single-step the exact selector/CRT traversal.
- Rotate and zoom a Matplotlib-style 8D → 3D projection receiver.
- Choose golden, triality-aligned, or Cartan-coordinate orthonormal frames.
- Show the exact 1,687-edge selected graph or 5,364-edge Cartesian-product lift.
- Imprint the centred graph-degree potential on the spirograph radius.
- Inspect the current root, selector metadata, tensor address, phase, and graph degree.
- Export the current 3D canvas as PNG and the receiver/model state as JSON.
The visual response can be driven by one of three browser-local sources:
- a generated ETQ pulse using the symbolic MIDI labels, degree-controlled filtering, and fibre-dependent receiver transposition;
- microphone analysis;
- analysis of a local audio file selected by the user.
Audio samples and microphone data remain inside the page. FFT bands and RMS level modulate point scale, motion, spirograph reach, and trace intensity. The generated receiver follows the browser-sonification lineage of E8_MUSIC, while remaining a separate compact instrument rather than copying its full WAV workbench.
Tuning, timbre, transposition, panning, and spectral response are authored receiver choices—not intrinsic E8 or ETQ properties.
The interactive main-page atlas is rendered on a dependency-free Canvas. A deterministic Python/Matplotlib renderer produces the conventional static 3D reference below from the same selector and adjacency rules.
Regenerate both README assets with:
python3 scripts/render_previews.pyMatplotlib and NumPy are only needed to regenerate these documentation assets; the application itself does not use them.
| Fixture | Value |
|---|---|
| Standard E8 roots | 240 = 112 integer + 128 half-integer |
| Doubled-coordinate squared norm | 8 |
| Embedded triality decomposition | 12 + 76(3) |
| Preserved selector | 2 + 33(3) = 101 |
| Selected-graph edges | 1,687 |
| Selected-graph degree sum / range | 3,374 / 22–55 |
| Selected root families | 41 integer + 60 half-integer |
Lifted G101 □ C3 edges |
5,364 |
| Lifted degree range | 24–57 |
| ETQ-303 operator order | 303 |
These counts are computed rather than hard-coded into the drawing layer. The test suite independently checks the construction, graph, traversal, phases, projections, audio mapping, and offline packaging.
| Layer | Status |
|---|---|
| E8 root coordinates, families, and norms | Exact finite construction |
| Embedded D4 triality and ambient orbit counts | Exact finite construction |
| Preserved 101-label selector and selected graph | Deterministic consequence of the declared coordinate frame and selector |
| 303 tensor addresses, CRT traversal, phase recipe, and graph-product counts | Exact within the named ETQ-303 contract |
| 3D frames, interpolation, colours, camera, and motion | Authored visual receivers |
| Tuning, synthesis, microphone/file response, and FFT mapping | Authored audio receivers |
The spirograph is the event-support traversal, not the edge set of the lifted graph. ETQ-303 contains 303 tensor states over 101 distinct E8-root labels; it does not claim 303 E8 roots or a canonical acoustic realization.
index.html Offline application shell
style.css Responsive industrial visual system
js/etq-core.js Exact E8, ETQ-101, and ETQ-303 constructions
js/visuals.js 3D atlas, spirograph, and spectrum receivers
js/audio-reactive.js Generated, microphone, and file audio analysis
js/app.js Interaction, playback, inspection, and export
scripts/render_previews.py Deterministic Matplotlib documentation assets
tests/ Mathematical, receiver, and offline checks
Node.js is used only for development checks:
npm testGitHub Actions runs the same suite for pull requests and main; a separate workflow deploys the static site to GitHub Pages after changes reach main.
- ETQ-303 v3.0.1 formal model and data record
- ETQ-101 / SONIFICATION model lineage
- E8_MUSIC browser sonification workbench
Mozilla Public License Version 2.0. Copyright 2026 Trent Slade / QSOL-IMC.