Stress Particle UX journey — Alex's full day from morning calm through stress peak to evening recovery

Alex · 32 · Product Manager · San Francisco · Smart ring + smartwatch + calendar

Particle state Agent action Apify call UX moment
08:00 28
CALM — FIRST LAUNCH
App opens for the first time — onboarding begins
Alex sees a blank particle field form in real time as she answers 5 phases of questions. Each answer immediately updates the seeding animation. At Phase 5, particles converge into her unique resting pattern. Agent says: "This is what your stress looks like. I will watch it with you."
Stress 28
Phase 1–5 onboarding Balanced · sparse teal drift Agent: watching Autonomy slider set Permissions granted
10:00 55
ELEVATED — MEETINGS BEGIN
HRV drops, calendar shows back-to-back blocks
The particle field warms from teal to orange-yellow. Density rises. Oscillating clusters form. The AgentTopPanel pill shifts from "Watching" to "Pending." The agent detects stress_score crossing the recipe threshold — but sees a meeting in progress and holds the intervention.
Stress 55
Elevated · orange-yellow clusters Agent: pending · meeting holdback useAbnormalRecorder fires Statistics entry logged
14:00 82
ACUTE — STRESS PEAK
Dense amber vortex. Agent holds — meeting still active.
Particles contract into a tight, fast-spinning amber-red vortex. The StressOrb brightens and pulses. SmartWatch mirrors the acute biometric state on the wrist. Agent state stays "pending" — calendar shows the meeting runs until 14:40. The system waits rather than interrupting.
Stress 82
Acute · dense amber-red vortex Agent: pending · calendar holdback SmartWatch: biometric mirror Timeline: stress spike logged
14:45 78
ACUTE → INTERVENTION TRIGGERED
Meeting ends. Agent surfaces a personalized intervention card.
5 minutes after block_end, agent fires buildQuery() using Alex's live profile: stress_archetype=tension, recovery_style=alone, audio_preference=[rain, white_noise], location=office. Apify calls run server-side. InterventionCard appears as a bottom sheet with synthesized results — not raw lists.
Stress 78
Agent: intervening buildQuery() → Google Maps · YouTube synthesize() → top 2 venues · top 3 tracks InterventionCard bottom sheet "Inner Sunset Yoga 0.4mi · 6pm in 38min"
15:00 72
USER DECISION MOMENT
Alex taps "Start recipe" on the intervention card
Alex accepts the breathing guide. The recipe engine begins sequencing: breathing guide starts immediately, then lighting shifts (warm → cool), then the diffuser activates. Each step fires at its delay_ms offset. The particle field begins cooling — density -20%, hue shifts toward teal over 8 seconds. Anticipation: particles contract inward 0.3s before the transition.
Stress 72
Tap: Start recipe Recipe engine: step sequencer fires Particles ease outward · ease-out-expo 8s IoT panel: diffuser + light actuation
18:05 61
HOME — RAIN & LAVENDER RECIPE
Location context switches to home. Rain recipe auto-executes.
contextInference detects home. Recipe engine matches "Rain & Lavender" recipe to home_evening trigger. YouTube Actor fetches "rain white noise ASMR sleep 1 hour" — personalized with Alex's audio_preference and chronotype:evening. Amazon Actor fetches "lavender muscle relaxation magnesium fast acting supplement." Particle field begins cooling.
Stress 61
YouTube: "rain white noise ASMR sleep 1 hour" Amazon: "lavender magnesium fast acting" Particles begin cooling · orange → teal Agent: recovering
19:30 34
RECOVERING — HRV RISING
HRV +12% post-recipe. RecoveryGlow pulses from center.
HRV rises above the 10% threshold. Particle size grows, velocity slows. Particles settle into slow orbit via spring physics — overshoot and settle. RecoveryGlow fires: a radial pulse emanates from the canvas center. efficacy_history entry is written: hrv_delta=+12, stress_before=61, stress_after=34. Recipe efficacy_score updates. Next YouTube query will weight "rain" higher.
Stress 34
Balanced → Recovered · spring physics settle efficacy_history written · hrv_delta +12 RecoveryGlow: radial pulse Next query reweighted: "rain" boosted
21:30 22
RECOVERED — WIND-DOWN
Galaxy pattern locks in. Soft resonance cue plays.
Particles reach minimum density — sparse soft violet, slow galaxy-like orbits. Full recipe executed: particle_state snaps to Recovered. Galaxy pattern convergence animation plays: particles sweep sequentially from outer to inner. A soft resonance sound fires. Timeline view shows the full day arc. Sleep guide begins. efficacy_score averaged across history.
Stress 22
Recovered · sparse violet galaxy Agent: watching · sleep guide active Galaxy convergence animation · sound sync Timeline: full day arc visible efficacy_score averaged · loop complete
Peak stress
82
14:00 · acute vortex
Recovery end
22
21:30 · violet galaxy
HRV delta
+12%
post-recipe · written to history
Apify calls
5
Maps · YouTube · Reddit · Healthline · Amazon