Honey falls onto toast and coils, loops and meanders like a real viscous rope.
A falling thread of honey slows sharply where it meets the toast, and the compressed bottom buckles into steady coils. Where it lands follows the geometric model of the 'fluid mechanical sewing machine': the trace is laid at the thread's speed and its curvature depends only on the offset between nozzle and contact point, so moving the dipper turns coils into translated loops, figure-eight alternating loops, meanders and finally a straight line. The thread in the air is a discrete elastic rod of Verlet nodes, clamped at the nozzle and wound into a helical heel at the bottom, thinning as the honey accelerates. Laid honey stacks in a height grid, slumps at a viscosity dependent rate and is baked into the toast texture with an embossed gloss.
Try it. Drag over the toast to move the dipper: hold still for a coil tower, glide slowly for loops, faster for meanders. Use the sliders (or the arrow keys) to change the drop height and viscosity. Press R for a fresh slice.
Paste this into Claude Code, Codex or any coding agent to get a simple version running, then take it wherever you like.
Build a honey coiling toy with JavaScript and the HTML canvas element: a thin stream of honey falls onto toast and lays itself down in coils and loops. Put everything in a single index.html file with no libraries or build step, so I can open it directly in a browser.
Start simple, looking straight down at the toast:
- Make a canvas that fills the window, stays sharp on high-DPI screens (scale by devicePixelRatio), and resizes with the window. Draw a toast-colored rounded square on a warm background.
- The nozzle is a point that follows the mouse. The contact point (where honey touches the toast) has a position and a heading. Each frame, move it forward at a fixed laying speed V and turn it with a curvature that depends on where the nozzle is: aim for a direction that circles the nozzle at radius R, plus a pull toward that radius when it is too near or too far.
- Leave a trail of honey behind the contact point: store the points and draw them as a thick, round-capped golden line.
- Draw the falling thread as a line from the nozzle to the contact point.
Holding still should give neat circles; moving gives loops, then wiggles.
Then make it beautiful and more physical:
- Tilt the camera: project (x, y, z) to the screen with a simple oblique projection, put the nozzle above the toast, and draw the thread as a chain of 30 or so points with Verlet integration, distance constraints and a little bending stiffness, pinned at both ends.
- Keep a coarse height grid so new coils stack on old ones, and let the height slowly relax so the honey slumps.
- Shade the honey in passes: a dark amber rim, a golden body and a thin pale highlight offset toward the light.
- Add sliders for height and viscosity that change V and R.
Explain the key ideas in short code comments. When you're done, tell me how to open it and suggest three directions I could take it next, such as baking old honey into a toast texture for unlimited drizzling, a moving conveyor belt to explore the full pattern zoo, or a real viscous rod model in place of the steering rule.