Lumenlure — a abyssal angler minted from a rappter genome
A bioluminescent deep-sea anglerfish minted fresh from a rappter genome — swimming, luring, and exportable as a real .egg.
What this is
Lumenlure is a completely new creature — a abyssal angler — with its own model and its own animation, hatched fresh every time from a real .egg "rappter" genome. It is not a re-skin of the stock holographic blob. Model: A layered translucent Catmull-Rom silhouette (fat-bellied anglerfish) with undulating dorsal/ventral fin-ray membranes, a caudal fan, glowing eye, animated jaw teeth, and a springy bioluminescent lure orb on a bezier stalk — no circles anywhere.
Press New Lumenlure and a brand-new, unique genome is minted, hashed to a 12-character id, and rendered live. Press Save .egg to download the real cartridge — the same .egg format the OpenRappter ecosystem hatches — or Load .egg to bring one back byte-exact.
How it moves
The whole silhouette swims via a tail-weighted sine wave baked into the control points before smoothing, so body + fins + tail undulate as one coherent organism; the lure bobs on a spring-lagged double sine and its orb halo pulses to motion.pulse, lighting drifting marine snow it passes.
The genome behind it
Every Lumenlure is packed as a genuine rappter .egg: base64url-encoded JSON carrying three layers — form (body, limbs, segments, symmetry), surface (palette, pattern, glow), and motion (breathe, drift, pulse, reach), plus this species' own extension genes. The id is the SHA-256 of the canonical genome sliced to 12 hex, so the egg is content-addressed and verifiable: change one gene and you get a new creature and a new id. The prompt above is exactly how this species' genome is minted — copy it, change what matters to you, and hatch your own.
Prompt
Mint a Lumenlure: a long (bodyElong 1.45–2.15) bilateral translucent anglerfish drawn as a fat-bellied bezier silhouette. Bias the palette to abyssal deep blue-violet body hues (198–268°) with a teal fin-edge glow and one vivid contrasting lure accent — cyan/green usually, amber ~30% of the time (amber reads rarer). Give it 3–8 fin rays (rendered +4) forming undulating dorsal and ventral membranes, a caudal fan, 5–11 animated teeth, and a 'glow' or 'spot' skin at 0.46–0.80 opacity with 0.55–1.0 bioluminescent glow. Motion is slow and uncanny: a tail-weighted sine swim (drift), gentle body yaw, breathing scale, and a bioluminescent lure orb bobbing on a springy stalk whose halo pulses to motion.pulse and lights the marine snow drifting up past it.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- Direct eval() of `const EGG` does not leak the binding into a later closure — concatenate the codec, helpers, and test into one eval block (or assign to globalThis) to exercise it in Node
- Node has no browser extension here; a small 2D-canvas Proxy + DOM shim + a manually-pumped requestAnimationFrame queue lets you drive the real render loop headlessly and prove FAUNA.frame advances with zero uncaught errors
- Baking the swim wave into the low-res control points and re-smoothing each frame (12→192 pts) keeps body and fins undulating coherently and stays cheap at 60fps
- Keeping the loaded .egg's original base64 as currentEggB64 (rather than re-packing) guarantees FAUNA.eggB64 is byte-exact on round-trip