Inspiration My dad has dealt with chronic joint pain for years. He's the kind of person who pushes through it, goes to work, doesn't complain, but you can see it wearing him down. We've tried everything: specialist appointments, physiotherapy, medications. And every single time, the pattern is the same. He goes in, gets assessed, walks out with a plan, and then nothing. The appointments stop. Life gets busy. The exercises don't get done. And three months later we're back at square one.
What frustrated me most wasn't the lack of care at the clinic. The practitioners were great. It was the gap between the appointment and everything after it. The moment he walked out that door, he was on his own. No reminders, no feedback, no way for his physio to know if he was actually improving or silently getting worse at home.
That's what Hydrawav3 is trying to solve. Not just the session. The whole journey.
What It Does Hydrawav3 is a full-stack clinical-to-patient platform built around the Hydrawav3 Pro recovery device. But really, it's about continuity of care.
For practitioners, it's a complete session management suite:
An AI-powered intake and protocol generator that synthesizes patient history, pain levels, posture data, and activity level into a personalized treatment plan A live patient dashboard showing recovery scores, HRV trends, session history, and pain trajectories across the entire client base A smart voice assistant ("Hey HYDRA") with hands-free wake-word detection for clinicians who have their hands full. It can take session notes, book appointments, and navigate the app entirely by voice A calendar and booking system with real-time appointment management For patients, it's a companion app that makes recovery feel achievable:
A personal recovery portal with mood check-ins, pain tracking, and a session timeline A guided exercise library with a step-by-step timer and instructions for every movement A gamified goals and XP system, because motivation is half the battle A real friends leaderboard using invite codes, so recovery becomes something you do with people, not alone Together, the two sides of the platform stay in sync. When a practitioner adds a new patient, they show up everywhere, in the session manager, analytics hub, and leaderboard, instantly and with only the data that was actually provided.
How We Built It Frontend: React (Vite) with a fully custom CSS design system. We built every component from scratch to keep the design premium and responsive. Key components include:
RecoveryScoreRing: SVG-based animated recovery ring HRVTrendChart: real-time Recharts area visualization PostureScan: camera-based posture analysis component ExercisePlayer: a modal with countdown timer, step navigation, and XP reward on completion State Management: A custom clientStore.js acts as a shared source of truth across all pages, using localStorage for persistence and CustomEvent broadcasting for real-time cross-page sync, no Redux, no Context bloat.
Voice Assistant: Built on the Web Speech API with a continuous background loop for "Hey HYDRA" wake-word detection. The recognition pipeline is ref-based to avoid stale closure bugs in the React lifecycle.
Friend Code System: A friendCodeStore.js utility generates a persistent unique invite code per device. A baked-in registry maps known codes to real user stats, so entering a friend's code instantly pulls their verified name, score, and streak.
Backend: Python (Flask) with a protocol engine that takes patient biometric data and generates multi-modal recovery protocols combining thermal, vibration, and light therapy parameters. Connected to the Hydrawav3 device via MQTT.
Challenges We Ran Into The hardest part wasn't the features. It was the data integrity problem. Early on, every page maintained its own patient list. Add someone in Client Management, and the Session Manager still showed the old list. Analytics was showing patients that didn't exist. We had to stop and redesign around a single shared store. Not glamorous, but it was the right call.
The voice assistant went through three complete rebuilds. The Web Speech API is notoriously unreliable. Getting the hands-free wake-word loop to work without creating infinite feedback loops, dead recognition sessions, or stale React state took a lot of careful ref-based pipeline design.
Getting the "Start Exercise" button to actually do something sounds embarrassing in retrospect. The button existed, the CSS existed, but the onClick was never wired up. A reminder that in a hackathon, the gap between "it looks like it works" and "it works" is often just one missing handler.
Accomplishments That We're Proud Of The cross-page sync working seamlessly. Add a patient once, they appear everywhere, with exactly the data you entered and nothing made up Building a hands-free AI voice layer that a practitioner can actually use mid-session without touching a screen The exercise player modal. A small thing, but watching a patient click "Start Exercise" and get a real guided countdown with step-by-step instructions feels like something that could actually help someone like my dad stay consistent The friend code leaderboard. Recovery is lonely, and giving patients a way to add real friends and compete on streaks brings a social accountability layer that purely clinical tools miss Keeping the design genuinely premium throughout, not just functional What We Learned The hardest problem in health tech isn't the algorithm or the device. It's continuity. Building the session is the easy part. Building the thing that keeps working after the session ends, that follows the patient home, that remembers what happened last week and holds them accountable next week, that's the real challenge.
We also learned that data contracts matter from day one. Every time we added a feature that read from patient data, we paid for the decision to store that data inconsistently. A shared store isn't exciting to build, but it's the foundation everything else depends on.
And honestly, ship the onClick before you ship the button.
What's Next for RN Dev Hydrawav3 Real backend sync: Replace localStorage with a live database so practitioners and patients on different devices share the same state in real time Wearable integration: Pull live HRV, sleep, and strain data directly from WHOOP or Apple Watch to make recovery scores dynamic, not static Adaptive protocols: Use session history to automatically adjust treatment intensity week over week, not just at intake Multi-practitioner clinics: Role-based workspaces so an entire practice can manage their patient list collaboratively Messaging: A secure in-app channel so patients can message their practitioner between appointments, and practitioners can send check-ins and protocol updates without a separate tool Most importantly, making sure the next time someone like my dad walks out of a clinic, the care doesn't stop at the door.
Log in or sign up for Devpost to join the conversation.