# One-Shot Prompt

**Simulation**: Receipt Paper
**Theme**: Minimalist
**Generated**: 2026-04-04

## Prompt

Generate a complete, single-file interactive 3D physics simulation of a receipt/paper strip.
- Physics Engine: Custom Verlet integration from scratch. No physics libraries.
- Particle Topology: A grid of 15x30 particles representing a receipt paper.
- Constraints: Distance constraints (structural, shear, and bending) to maintain the sheet's structure, allowing it to crumple, fold, and swing. Fix the top row to a set of static anchor points.
- Self-collision: Add a repulsion force between non-adjacent vertices to simulate self-collision and prevent the paper from passing through itself.
- Visuals: Use Three.js. Smooth shading, double-sided rendering, MeshStandardMaterial. Add directional lighting with soft shadows. Subdued minimalist theme (off-white paper on a soft gray background).
- Interaction: Raycasting to allow grabbing and dragging any part of the paper with the mouse or touch.
- Substeps: 8 physics substeps per frame for stability.
- Content: Draw "RECEIPT", a fake barcode, and some itemized lines programmatically on the paper using a canvas texture.
- Single HTML file. No external dependencies other than Three.js CDN. Target 60fps.

## Notes

- Uses Verlet integration to handle complex constraint layouts smoothly.
- The paper texture is generated procedurally via an offscreen HTML5 Canvas.
- Self-collision keeps the receipt from collapsing into itself.
- Minimalist presentation focuses entirely on the physics interaction.
- Ready to drop into CodePen, Vercel, or Cloudflare Pages.