# WebCode Sonification Engine (WSE) > An open-source experimental browser extension (Chrome, Manifest V3) that transforms a webpage's computational structure — DOM topology, sampled CSS, visual geometry — into deterministic, reproducible generative music, synthesized locally with the Web Audio API. Concept and project direction: Neo.K (EveMissLab). License: Apache-2.0. Core claim: a webpage's accessible computational structure may define a reproducible generative musical identity. Seed = Hash(CanonicalURL, StructuralFingerprint) — never URL alone. Local-only: no page content is ever uploaded; form values are never read. Prior art acknowledged with special thanks: "Synesthesia Add-on: a Tool for HTML Sonification" (Brazilian Symposium on Computer Music, 2017), https://github.com/rppbodo/synesthesia-addon. WSE does not claim to be the first HTML-to-music extension; it was designed independently, but this pioneer work established the feasibility of the direction. ## Pages - [Home](https://wse.evemisstechnology.com/): product overview, mapping table, styles, roadmap - [Live demo](https://wse.evemisstechnology.com/demo/): the full pipeline running in-page — the page is its own score - [Machine-readable manifest](https://wse.evemisstechnology.com/ai/manifest.json) ## Mapping (v0.5.0) Visualizer: the extension's "Analyze & Visualize" opens a full-tab view where the page's element tokens light up as "their" notes sound (links → arpeggio, images → bells, buttons → percussion) above a scrolling piano-roll score; every NoteEvent carries the mapping layer that generated it. Subtrees marked data-wse-ignore are excluded from extraction. Three playback modes, selectable in the popup: Auto (real-time clock, default), Scroll (the page's scroll position drives the timeline — scrolling forward triggers notes, scrolling back is silent until you scroll forward past them again), and Live (a quiet ambient bed loops while the page's own DOM mutations — nodes added/removed, attributes changed — play reactive notes on top, rate-limited to ≤10 events/second). Mapping Profiles reweight structural character signals without replacing the page fingerprint; local Presets save bounded profile/style/mode/tuning choices. Export WAV renders the current score offline through the identical synthesis graph used for live playback, while MIDI preserves the same deterministic score as stable layer tracks; both are entirely client-side. New in v0.4.1 — sound design pass: every sustained/melodic voice now has a filter envelope (brightness moves through the note instead of a static cutoff); the procedural reverb gained a pre-delay, sparse early reflections and a progressively darkening tail; the master bus adds a warmth/air EQ and a soft-knee saturator ahead of the compressor. Five new instruments — clarinet, marimba, 箏/koto, subbass, choir — wired into the orchestration palette (23 instruments total). - v0.5.0 — bounded Mapping Profiles, local Presets, per-layer mix including Low End, and deterministic WAV/MIDI exports; no cloud analysis or runtime coupling is added. - Tag diversity + node count → tempo (52–176 BPM) - Average CSS hue → key; lightness × saturation → one of 7 scales - Dominant structural family (content/navigation/media/form) → lead & arpeggio instruments - Link density → Euclidean arpeggio pattern; image density → bells; button density → percussion - header/main/footer → song form Intro–A–B–A'–Outro - Hard caps: ≤12 simultaneous voices, ≤20 note events/second ## Related - [Source code & releases](https://github.com/kakon77777-commits/webcode-sonification-engine): public GitHub repository (Apache-2.0) - [Axioglyph / 理符](https://axioglyph.evemisslab.com/): sibling sound/research project; the connection is public navigation only - [EVEMISS Technology](https://evemisstechnology.com/): parent company site