app
Circuit Trace Generators
Public Made by Adomby adom
Two dependency-free, seeded circuit-background generators: a seamless torus tile with ambient or progressive reveal, and the v9 continuous field with obstacles, scroll reveal, and five ambient systems.
← Commit history
Interactive README: embed both live demos via wiki-hosted render URLs
2 files changed
+38−10
README.md+35−7@@ -33,11 +33,20 @@ Both ship `createCircuitBackground(mount, options)` returning `{ regenerate, exportSvg, destroy }`, both are seeded (the same seed and dimensions give identical geometry), and both honour `prefers-reduced-motion`. +> **Both demos run live on this page.** The frames below are the real engines,+> served from this page's own files, not screenshots. Drag a slider, switch a+> preset, move the pointer over the board. They are hosted on the wiki itself, so+> they do not depend on any running container and will not go dark. If a frame is+> blank you are viewing the page signed out; open it directly with the launch+> link under each frame.+ --- ## 1. Tiling router: `circuit-background.js` -+<iframe src="/adom/circuit-trace-generators/render/src/index-classic.html" title="Tiling router, live interactive demo" loading="lazy" width="100%" height="640" style="width:100%;height:640px;border:1px solid #1e2633;border-radius:10px;background:#0d1117;"></iframe>++**[Open the tiling-router demo full screen](/adom/circuit-trace-generators/render/src/index-classic.html)** · seed, presets, and all twelve generation sliders are live. An occupancy-grid router run **on a torus**, so the `900×450` tile it emits repeats in both axes with no visible seam and no two traces ever cross. That makes@@ -116,7 +125,9 @@ const svg = tileSvg(tile, { background: "#0d1117" }); ## 2. Field router: `circuit-background-v5.js` -+<iframe src="/adom/circuit-trace-generators/render/src/index.html" title="Field router, live interactive demo" loading="lazy" width="100%" height="640" style="width:100%;height:640px;border:1px solid #1e2633;border-radius:10px;background:#0d1117;"></iframe>++**[Open the field-router demo full screen](/adom/circuit-trace-generators/render/src/index.html)** · switch geometry presets, ride the four animation systems, export the current SVG. No tile. A deterministic planar trace-packing pass fills one continuous field at the mount's real dimensions with hundreds of independent routes. A rotatable@@ -194,10 +205,26 @@ overflow, and leaves pointer interaction to the surrounding page. --- -## Running both demos+## Running the demos++### On this page (no setup, always up)++Both demos are the actual `src/` files, rendered by the wiki straight from this+page's repo:++| Demo | Live on the wiki |+| --- | --- |+| Tiling router | [render/src/index-classic.html](/adom/circuit-trace-generators/render/src/index-classic.html) |+| Field router | [render/src/index.html](/adom/circuit-trace-generators/render/src/index.html) |++These need no container and do not expire. Because the page is private, they load+only for signed-in members of the `adom` org, and they run sandboxed, which the+engines are fine with since they use no storage or network.++### Locally The two projects share one working directory, `~/project/circuit-generator`, and-run on separate ports.+run on separate ports: ```bash cd ~/project/circuit-generator@@ -209,15 +236,16 @@ node serve-classic.mjs # serves index-classic.html + circuit-background ./serve.sh # serves index.html via server.js ``` -Public mappings on container `beziswazskpw`:+### Container port mappings (ephemeral)++These were the original public URLs on container `beziswazskpw`. They only work+while that container serves them, so prefer the wiki-hosted demos above: | Demo | Port | URL | | --- | --- | --- | | Tiling router | 8930 | <https://traces-fuyou1ziuokn.adom.cloud> | | Field router | 8124 | <https://circuit-y2uq81e4dp1d.adom.cloud> | -If either URL returns a 502, the process died. Re-run its command above.- ## File map Both projects live side by side in one directory, which is the single most
package.json+3−3@@ -2,7 +2,7 @@ "slug": "circuit-trace-generators", "title": "Circuit Trace Generators", "type": "app",- "version": "0.1.2",+ "version": "0.2.0", "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",@@ -19,7 +19,7 @@ "seamless circuit tile", "procedural trace pattern" ],- "discovery_pitch": "Reach for this when a page needs the Adom circuit-trace backdrop — either a seamless tile you can repeat as a CSS background-image, or one continuous generated field sized to the mount.",+ "discovery_pitch": "Reach for this when a page needs the Adom circuit-trace backdrop: either a seamless tile you can repeat as a CSS background-image, or one continuous generated field sized to the mount.", "sample_prompts": [ { "label": "Seamless tile",@@ -36,7 +36,7 @@ }, "hero": { "headline": "Circuit Trace Generators",- "subhead": "Two seeded SVG routers for the Nitrogen hero background — one tiles a torus, one packs a continuous field.",+ "subhead": "Two seeded SVG routers for the Nitrogen hero background: one tiles a torus, one packs a continuous field.", "screenshot": "docs/hero.png", "accent": "#00e6dc" }