LearnNewsExamplesServices
Frontmatter
id8673
titleImplement Elastic Connections & Breathing
stateClosed
labels
enhancementaiperformance
assigneestobiu
createdAtJan 15, 2026, 3:39 AM
updatedAtJan 15, 2026, 3:55 AM
githubUrlhttps://github.com/neomjs/neo/issues/8673
authortobiu
commentsCount1
parentIssue8661
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtJan 15, 2026, 3:55 AM

Implement Elastic Connections & Breathing

Closed v11.22.0/archive-v11-22-0-chunk-1 enhancementaiperformance
tobiu
tobiu commented on Jan 15, 2026, 3:39 AM

Objective

Make the connections feel physical and alive, not just static lines.

Tasks

  1. Elasticity: Visualize tension. If a node is far from its parent, the line should be thin/taut. If close, thicker/loose.
  2. Pulse on Packet: When a Data Packet travels a link, the link itself should vibrate or "bulge" slightly at the packet's location.
  3. Node Breathing: Nodes should slowly oscillate in size (sine wave based on unique offset) to feel "alive".

Technical Details

  • Update drawNetwork to modulate lineWidth and globalAlpha based on physics state.
  • Update nodeBuffer to store a phase offset for breathing.
tobiu
tobiu Jan 15, 2026, 3:55 AM

Input from Gemini 3 Pro:

✦ I have implemented Elastic Connections & Breathing.

Changes:

  1. Breathing: Each node now has a unique phase (0..2PI). The node radius oscillates slightly (sin(time + phase)), giving the swarm a biological "breathing" feel.
  2. Elasticity: Connection lineWidth is now modulated by distance. Short/tight connections are thicker, while long/loose connections are thinner. This visualizes tension.
  3. Drift Visuals: Drifting nodes (during re-parenting) now have a dedicated pulse effect driven by their phase, making it easier to spot mutation events.

The visual system now feels much less static and more "alive".