Inspiration
When my head is loud, typing into a chatbot feels mundane, but saying it out loud works. Most wellbeing apps are content libraries wrapped in streaks, badges and reminders. I wanted the opposite: a calm presence you can talk to, that shifts with the conversation and is easy to close. I built it to overcome my own depression and mental struggles - and to give others in similar situations something to turn to.
What it does
Entrain Grounded is a voice-first companion for everyday stress, racing thoughts and winding down. You talk (or type) and it answers in a warm, natural voice, in real time.
- A living space: a live ink-in-water visual shifts with the emotional register of the conversation, steadier when you're steady, denser when things get heavy, softening as you settle. A responsive meditative soundscape runs beneath it.
- Practical tools: grounding exercises, paced breathing, guided meditations, and reflection summaries you can look back on.
- Sleep: original sleep stories with a 20/45/60/90-minute picker. The story trails off and an ambient bed carries the rest of the timer.
- Quiet by design: no streaks, no gamification, no engagement tricks. Conversations aren't sold or used to train models, and voice isn't kept after transcription.
It's a wellness companion, not therapy or a crisis service. It routes crisis signals to human support lines.
How we built it
I built it solo with Claude Code as my main implementation tool.
- App: Expo / React Native with TypeScript. Zustand handles state. The ink visual runs on react-native-skia and Reanimated.
- Brain: Claude (Sonnet 4.6) as the companion. An orchestrator classifies the conversational state and drives the companion's behavior, the visual and the audio.
- Voice: OpenAI speech-to-text and text-to-speech.
- Monetization: RevenueCat handles subscriptions and entitlements.
Challenges we ran into
- Ambient pad death: CPU not being able to handle custom skia visuals and continuous ambient pad - killing the audio.
- AI voice consistency: OpenAI TTS not being consistent in prose and other voice characteristics.
- Device overheating: the skia ink visual, audio and streaming speech all run at once.
Accomplishments that we're proud of
- A shipped, working closed loop: speech, a live generative visual and responsive sound moving together in real time.
- An ink animation I iterated through several rejected directions (glowing orb, particle fog, flat translucent) until it read like real ink.
- Ten original, safety-checked sleep stories.
- Doing all of it, including the legal docs, entity setup and store metadata, as one person.
What we learned
Trust comes from honesty about limits: it's an AI, it's not therapy.
What's next for Entrain Grounded - Talk, Reflect, Unwind, Sleep
Finding the user base and bringing emotional well-being to as many people as possible.
Built With
- anthropic
- apple
- claude
- ios
- openai
Log in or sign up for Devpost to join the conversation.