Inspiration

Hope was born from a desire to make mental health support more accessible and less intimidating. We recognised that many people struggling with PTSD, depression, anxiety, or social isolation feel hesitant to open up due to stigma, access barriers, or fear of judgment. Inspired by the power of compassionate listening and advances in AI, we created Hope to provide a safe, 24/7 space where anyone can express their feelings through natural voice conversations, offering immediate support and a bridge to professional care.

What it does

Hope is an AI-powered therapeutic companion that supports individuals facing mental health challenges through natural, voice-based conversations. It offers:

Emotional Support: A non-judgmental space for users to share feelings related to PTSD, depression, anxiety, or isolation. Evidence-Based Tools: Grounding exercises, breathing techniques, and psychoeducation to help users cope. Conversation Memory: Recalls past sessions to provide continuity and personalised responses. Crisis Resources: Immediate guidance to professional help when needed.

Hope acts as a supportive listener and skill-building tool, empowering users to process emotions and build confidence for professional therapy.

How we built it

We built Hope using a modern tech stack to enable real-time, voice-based interactions:

Frontend: A responsive web interface built with HTML, JavaScript, and CSS, handling audio streaming via the WebAudio API. Backend: A Node.js server for real-time WebSocket communication. AI Integration: Leveraged Amazon’s Nova Sonic model via AWS Bedrock for speech-to-speech processing, enabling empathetic and natural responses and Database: DynamoDB for secure storage of user profiles and session data, with encrypted transcripts for privacy. Infrastructure: ALB, ECS, VPC, Bedrock nova sonic, bedrock nova micro, DynamoDB, KMS

The system streams user audio to the server, processes it through Nova Sonic, and returns AI-generated voice responses, creating a seamless conversational experience.

Challenges we ran into

Kiro doesn't fully understand InvokeModelWithBidirectionalStreamCommand and InvokeModelWithBidirectionalStreamInput from aws-sdk/client-bedrock-runtime. I had to experiment a lot. Speech-to-Speech troubleshooting is much more complicated than text-to-text services

Accomplishments that we're proud of

  • Seamless Voice Interaction: Achieved smooth, real-time speech-to-speech communication that feels natural and personal.
  • Trauma-Informed Design: Built an AI that prioritizes user safety, validation, and empowerment, adhering to trauma-informed principles.
  • Personalised Continuity: Developed a memory system that tracks user progress and references past conversations meaningfully.
  • Impactful Support: Created a tool that provides immediate, 24/7 emotional support, helping users take their first steps toward healing.

What we learned

Have got a real hands on experience with Amazon Nova Sonic model. It works much faster than speech to text -> generate a response using some text-to-text model -> text to speech.

What's next for "Hope, the therapist"

  • Multilingual Support: Sonic supports Spanis, German, French and Italian languages.
  • Mobile App: Develop iOS and Android apps for greater accessibility and offline capabilities.
  • Cognito integration for better user management.

Built With

  • alb
  • bedrock
  • dynamodb
  • ecs
  • kms
  • node.js
  • nova
  • nova-sonic
  • sonic
  • vpc
Share this project:

Updates