← Commit history

Publish 0.1.2

AdityaAngajala ·f88f1275ed ·3mo ago ·parent 71e32d6
5 files changed +27−14
README.md+25−12
@@ -86,6 +86,11 @@ a hard ceiling. Animation presets: **None** (the page default, a static board), **Fireflies**, **Swarm**, **Cursor sparks**, **Slow streams**. +![Tiling router demo with the Swarm preset running and the generation panel open](docs/demo-tiling.png)++The demo splits its knobs into two panels, Generation tuning and Animation+tuning, each with its own reset scoped to just its own sliders.+ ### Headless CLI  ```bash@@ -137,19 +142,27 @@ count, route-length distribution, stroke, via count, and orientation mix), **Dense**, **Diagonal sweep**, **Broad swirl**, **Sparse**. Geometry presets never touch motion settings; the two preset rows are independent. -### Two animation systems--- **Original conductor** (`circuit-animation-conductor.js`) is the full system:-  ambient currents, breathing endpoint nodes, core and halo packets, convoys,-  timed spatial waves, pointer wake, endpoint flashes.-- **Adom handshake** (`circuit-animation-handshake.js`) is the restrained-  alternative. Each transaction charges a source via, traverses one complete trace-  once, settles into its destination via, and sends a dim acknowledgement back. It-  uses exact polyline intervals instead of wrapping dashes, never flood-lights the-  field, and avoids the protected hero-copy reading zone. Only `maxHandshakes` (3)-  transactions coexist, so per-frame work does **not** grow with geometry density.-  That is the reason to reach for it on a dense board.+### Animation systems++Four presets, in the demo's Animation row:+ - **None** mounts only the static SVG and creates no animation layer at all.+- **Conductor** (`circuit-animation-conductor.js`) is the full system: ambient+  currents, breathing endpoint nodes, core and halo packets, convoys, timed+  spatial waves, pointer wake, endpoint flashes.+- **Routed field** (`animationSystem: "adom"`, implemented in `v4`) is a third+  system, not a retune of the conductor. It drives a slow angled sweep across the+  board (`sweepDuration` 15.2 s, `sweepAngle` 18°) plus periodic blooms that light+  traces near a moving cursor, capped at three concurrent blooms.+- **Handshake** (`circuit-animation-handshake.js`) is the restrained alternative.+  Each transaction charges a source via, traverses one complete trace once,+  settles into its destination via, and sends a dim acknowledgement back. It uses+  exact polyline intervals instead of wrapping dashes, never flood-lights the+  field, and avoids the protected hero-copy reading zone. Only `maxHandshakes`+  (3) transactions coexist, so per-frame work does **not** grow with geometry+  density. That is the reason to reach for it on a dense board.++![Field router demo with the Handshake preset active and the parameter panel open](docs/demo-field.png)  ### API 
docs/demo-field.pngadded
⋯ 1 unchanged line ⋯
docs/demo-tiling.pngadded
⋯ 1 unchanged line ⋯
package.json+1−1
@@ -2,7 +2,7 @@   "slug": "circuit-trace-generators",   "title": "Circuit Trace Generators",   "type": "app",-  "version": "0.1.1",+  "version": "0.1.2",   "description": "Two dependency-free, seeded SVG generators for the Adom Nitrogen hero background: a tiling router that emits a seamless 900x450 PCB-trace tile from a torus occupancy grid, and a field router that packs one continuous non-repeating trace field using a flow field and seeded vortices.",   "tags": [     "svg",
page.json+1−1
@@ -2,7 +2,7 @@   "slug": "circuit-trace-generators",   "title": "Circuit Trace Generators",   "type": "app",-  "version": "0.1.1",+  "version": "0.1.2",   "description": "Two dependency-free, seeded SVG generators for the Adom Nitrogen hero background: a tiling router that emits a seamless 900x450 PCB-trace tile from a torus occupancy grid, and a field router that packs one continuous non-repeating trace field using a flow field and seeded vortices.",   "tags": [     "svg",