# One-shot Tree Leaves Prompt

Project: `crest-alpha-origin`

Route: `/tree-leaves/`

Skill: `oneshot-tree-leaves`

User prompt:

> seasonal canopy physics with regrowth and falling leaves, deployed under https://crest-alpha-origin.pages.dev

Shared brief:

> Apply `{{ skill:interface-design-taste }}` principles. Aim for high composure, organic visual richness, crisp controls, accessible motion controls or reduced-motion fallback, and tactile interaction polish. Keep this route distinct and visually ambitious rather than generic. Do not use external images. Do not deploy. You are not alone in the codebase; write only inside your ROUTE_DIR or temporary scratch outside the route, and do not revert or modify others' work.

Chosen preset:

- Custom blend of `Golden avenue maple` and `Harbour wind plane tree`

Visual direction:

- Build a single rooted hero tree in a luminous urban-garden clearing with warm late-light tones, cool atmospheric depth, and a clearly readable canopy lifecycle.
- Keep the interface composed and tactile: glass-and-bark control surfaces, dense but calm telemetry, and responsive touch-friendly controls.
- Make the visual identity feel organic and ambitious rather than like a generic particle demo.

Systems list:

- Single-file HTML with inline CSS and JavaScript
- One visible trunk and recursive branch hierarchy with secondary flex motion
- Attached buds and leaves distributed across outer branches
- Full seasonal loop: spring budburst, summer fullness, autumn colour turn plus shedding, winter bareness plus regrowth
- Wind field with calm, breezy, and stronger states plus user-triggered gust interaction
- Detached leaves with airborne drag, drift, settling, and ground accumulation
- Start, help, running, and reset states
- Pointer and touch drag interaction for canopy gusts
- Reduced-motion handling via `prefers-reduced-motion` plus an explicit motion toggle

Season loop:

1. Spring: bare twigs produce small buds that expand into fresh leaves.
2. Summer: canopy density peaks, branch sway softens, and the tree reads as one full organism.
3. Autumn: palette shifts from green to amber and rust, gusts detach leaves, and the ground layer thickens.
4. Winter: branches stand exposed with only the smallest dormant buds before the cycle restarts.

Interaction model:

- Start overlay introduces the route and begins the simulation.
- Help overlay explains season scrub, wind control, gust/shake interaction, and reduced-motion behaviour.
- Season slider allows manual scrubbing or auto-loop playback.
- Wind slider and mode buttons adjust canopy sway and detachment pressure.
- Dragging across the scene injects local gusts that bend branches and pull loose leaves.
- Reset rebuilds the scene and clears the current accumulation state.
