🚀 Inspiration
Mental health struggles affect millions, but not everyone has access to quality therapy. Long wait times, high costs, and stigma make it difficult for many to seek help. We wanted to create something immediate, private, and supportive — a tool that feels like talking to a real therapist, without the barriers. That's how Talk to a Therapist was born: a safe AI-powered space to talk, reflect, and heal.
💡 What it does
Talk to a Therapist is an AI mental health companion that allows users to:
- Choose from multiple therapist personas (e.g., trauma specialist, mindfulness coach, CBT expert)
- Engage in personalized, real-time video conversations powered by Tavus Conversational Video Interface (CVI)
- Get emotional support and self-help advice based on their needs (e.g., stress, anxiety, confidence)
- Optionally track moods or journal thoughts (planned feature)
🛠️ How we built it
We used:
- Tavus CVI API for generating personalized video responses
- React + TypeScript + Vite for the frontend framework
- Tailwind CSS for styling
- Framer Motion for smooth transitions and animation
- A flexible architecture with support for multiple therapist personas powered by dynamic persona IDs
- Local state management using
Jotaito manage avatar, session, and user data
🧱 Challenges we ran into
- Persona ID integration: Errors when switching between therapist avatars until we stabilized ID usage
- Concurrent session limits: Tavus limits caused interruptions we had to handle gracefully
- Credit limits & error handling: Ensuring the app provided meaningful feedback when API limits were hit
- UX polish: Creating an inviting, trustworthy interface for therapy-style interactions in a limited timeframe
🏆 Accomplishments that we're proud of
- Created a fully working AI therapist interface with dynamic avatar switching
- Integrated video replies with realistic timing and tone using Tavus CVI
- Designed a clean, responsive UI that's calming and accessible
- Handled multiple edge cases, like expired tokens and concurrent session issues
📚 What we learned
- How to architect a frontend that adapts to different AI personas dynamically
- The importance of clear error feedback in AI experiences
- Managing API limits, sessions, and credits for real-time services like Tavus
- Designing for emotional UX — especially for users who may be in distress
🌱 What's next for Talk to a Therapist
- Add journaling and mood tracking to enhance self-reflection
- Personalize conversation flows based on past chats and user goals
- Enable voice-based input for a more natural interaction
- Integrate a backend to securely manage user sessions and mental health data
- Launch a mobile-first version for broader accessibility
Built With
- api
- bolt
- conversational
- css
- cvi
- dotenv
- eslint
- framer
- github
- icons
- interface)
- jotai
- lucide
- motion
- netlify
- react
- tailwind
- tavus
- typescript
- video
- vite
Log in or sign up for Devpost to join the conversation.