forever components

Organic & Nature

Voronoi Leaf Veins

Space-colonization algorithm grows branching leaf veins inside a lime-green silhouette, branch by branch with sparking tips, then fades and regrews in a loop.

canvasheavy complexitymoderate motionpointer

Open on the canvas to copy the code → Free account · 3 copies a day · membership goes unlimited

Live demo — the real component, running in a sandbox. One self-contained HTML file, zero dependencies. Open it on the canvas →
Worth keeping? Votes steer what gets built next — sign in to cast one, free to read

When to use it

Nature/botanical themes, generative art heroes, ambient backgrounds where organic growth motion adds depth without distraction.

When not to

Low-end devices (O(nodes*sources) nearest-neighbor search each frame). Contexts needing legible text overlay — the mid-canvas silhouette competes.

Working with an AI agent

Every component ships agent-ready metadata. An example instruction for this one:

Change the leaf color from lime-green to amber by replacing the strokeStyle RGB values (155,209,74) and fill base (#3a561a) to warm amber equivalents like (209,160,74) and (#563a1a). Theme: dark tokens live in :root, the light variant in :root[data-theme="light"]; ?theme=light or a {type:'forever:theme'} postMessage switches at runtime.

Safe to edit

  • growth step size (DG=0.020)
  • kill radius (KILL=0.030)
  • max nodes (MAXN=2600)
  • source count (NS=340)
  • vein line width scale (lw multiplier n.w*0.9*(S/420))
  • sap-light sweep (PSP=0.0062, PW=0.18) · grown-leaf hold (hold>480 frames ≈ 8 s) · fade/regrow (phase threshold 150)
  • theme tokens (:root dark defaults + [data-theme=light] overrides)

Keep intact

  • IIFE wrapper
  • prefers-reduced-motion guard (reduce branch with static frame)
  • visibilitychange pause/start
  • inLeaf boundary check in grow()
  • theme hook (?theme= bootstrap + forever:theme message listener + theme tokens)

Known limitations

  • Nearest-neighbor search is O(nodes×sources) — slows noticeably above ~2000 nodes on low-end CPUs
  • Pointer adds hormone sources permanently, inflating source array on heavy interaction
  • Leaf shape and angle are hardcoded — parametric control requires refactoring half() and ang

space-colonizationleafveinsorganicgenerativecanvasnature

More Organic & Nature components

  • Growing VineA sinuous green vine grows upward sprouting 14 alternating leaves and a pale bud tip, then retracts in a seamless loop on a dark forest background.
  • Flickering FireAdditive-blended ember particles rise from a glowing orange base, flickering like a real flame; cursor pans left/right to fan the fire sideways.
  • Water RippleConcentric ripple rings expand across a deep teal water surface with shimmering caustic bands; tap anywhere to drop a new ripple. Auto-drops periodically.
  • Lightning BoltJagged lightning bolts with branching forks strike randomly down a dark storm-sky canvas; screen flashes rust-white on each strike. Tap to trigger instantly.
  • Falling SnowUp to 110 depth-layered snowflakes drift and sway down a dark blue gradient; pointer movement shifts a wind force that nudges the entire flurry sideways.
  • Drifting CloudsPuffy white clouds with radial-gradient puffs and soft blue undersides drift across a layered sky gradient; pointer nudges them forward.