An agentic stress visualization app — biometric data becomes a living particle field that makes stress visible and recovery rewarding.
Stress Particle is an agentic digital health app for wearable users. It transforms biometric and behavioral data — smart ring, smartwatch, phone usage, and calendar — into a real-time animated particle field that makes stress visible without requiring the user to check numbers or navigate menus.
The particle field is a living feedback loop. When the user follows an agent-guided action or when biometric scores improve, the field responds: color shifts from warm amber to cool violet, density drops, and slow galaxy orbits emerge. Recovery becomes something you see and feel.
Every Apify Actor call is personalized using onboarding data — healing preferences, stress archetype, scent profile, stressor context, and live biometric state. The same call made for two different users produces entirely different, contextually meaningful results.
Built as a Lovable (React/Vite) prototype with Zustand state, Canvas API particle engine, and 5 personalized Apify Actor integrations.
People lack self-awareness of stress accumulation throughout the day — health apps demand active engagement at the exact moments users are too overwhelmed to engage.
External data (venues, content, research) is fetched generically and dumped as raw lists. No system connects body signals, personal healing preferences, and the living environment into a single continuous loop.
The design challenge: make stress legible at a glance, make recovery visually rewarding, and make every recommendation feel personally curated — not generically fetched.
Designed a particle field as the primary feedback channel. Stress score (0–100) maps to four visual states — Acute (dense amber vortex), Elevated (oscillating clusters), Balanced (cool teal drift), Recovered (sparse violet galaxy). State transitions animate over 8–20 seconds using ease-out-expo and spring physics to feel biological, not mechanical.
Built a personalization engine where every Apify Actor call is shaped by onboarding data: stress archetype (tension / speedup / shutdown), recovery style (alone / social / physical / zoneout), audio preference, scent profile, and primary stressor. A synthesize() layer ranks and contextualizes raw results before they reach the UI — so 'yoga studio 0.4mi away — 6pm class in 38min, good for solo decompression after tension stress' replaces 'wellness near me'.
Designed a 5-phase onboarding that builds the user profile and seeds the particle field simultaneously — each answer immediately updates the forming field in the background.
11 screens across onboarding (5 phases), home particle field, intervention card, timeline, IoT panel, healing profile, and settings.
Core loops: · Particle field — full-screen canvas driven by 6 biometric channels (HRV, heart rate, breath rate, SpO2, sleep score, screen time). Transitions use anticipation (15% inward contract 0.3s before change), staggered wave propagation center-out, and spring physics overshoot-and-settle. · Agent intervention — monitors biometric stream, holds during meetings, surfaces a personalized recipe card at the right moment with synthesized Apify results: top 2 venues, top 3 ASMR tracks, 2 research snippets, 2 Reddit community stories. · Efficacy feedback loop — after each recipe execution, HRV delta is measured and written to efficacy_history. High-efficacy audio types are weighted higher in the next YouTube Actor query; low-performing venue types are demoted from the Maps query. · 5 personalized Apify Actors — Google Places, YouTube, Website Content Crawler, Reddit Scraper, Amazon Product Scraper — each built with a buildQuery() and synthesize() function pair.
· Designed a complete PRD (v3 — full personalization) covering particle state definitions, onboarding spec, Apify personalization engine with buildQuery()/synthesize() pairs for 5 Actors, agent decision logic, autonomy levels, and a 13-milestone build plan. · Established a fusion principle — every external data fetch is personalized using user_profile fields resolved at trigger time, producing contextually meaningful results vs. generic lists. · Designed the efficacy feedback loop — a self-improving system where HRV recovery delta after each recipe reweights the next Actor query, creating a learning recommendation engine without a backend. · Defined demo success metrics: >90% onboarding completion, >70% intervention acceptance rate, >80% recovery transformation noticed in usability testing. · Scoped a buildable Lovable prototype (React/Vite + Zustand + Canvas API + Framer Motion) with all state in a flat mockDB.json — no backend required.