Aura
An AI-powered daily companion for people living with tinnitus and hyperacusis.

Team
| Name | LinkedIn Profile Link |
|---|---|
| Mathias DAVIN | linkedin.com/in/mathiasdavin |
| Chloé DAVIN | linkedin.com/in/chloé-davin-063595183 |
The Problem
Tinnitus and hyperacusis affect over 750 million people worldwide, yet there is no cure. Living with constant ringing, sound sensitivity, and the distress that comes with it is an invisible, isolating condition. Most people are left without any structured support between medical appointments — no way to track their symptoms over time, no personalised guidance, and no one to talk to at 2am when the ringing is at its worst.
What It Does
Aura is a mobile-first wellness companion designed specifically for people with tinnitus and hyperacusis. Each day, users complete a short check-in that captures their distress level, sound sensitivity, tinnitus intensity, mood, and triggers. Aura then:
- Analyses each check-in with AI (Mistral AI 🚀) to generate a personalised message, assess urgency, and recommend a tailored breathing or mindfulness exercise
- Tracks patterns over time through an insights dashboard that surfaces trends, trigger correlations, and week-over-week progress
- Provides a conversational AI companion users can talk to at any moment — to process difficult days, understand their condition, or simply feel less alone
- Remembers context across sessions so responses get more personalised the longer you use it
- Offers a crisis pathway with immediate guided breathing for high-distress moments
Users interact through a clean, calm mobile interface that feels nothing like a medical app — closer to a trusted friend who happens to understand your condition.
Architecture
Aura is a fully client-side Next.js application with a thin serverless API layer exclusively used for AI calls.
┌─────────────────────────────────────────────────┐
│ Next.js 16 App │
│ │
│ ┌──────────────┐ ┌─────────────────────┐ │
│ │ React UI │ │ AppContext │ │
│ │ (pages) │◄─────►│ (state + actions) │ │
│ └──────┬───────┘ └──────────┬──────────┘ │
│ │ │ │
│ │ localStorage │
│ │ (all user data, │
│ │ no account needed) │
│ │ │
│ ┌──────▼───────────────────────────────────────┐ │
│ │ Next.js API Routes │ │
│ │ /api/checkin-analysis /api/insights │ │
│ │ /api/chat /api/nudge │ │
│ │ /api/memory-extract /api/title-generate │ │
│ └──────────────────┬────────────────────────────┘ │
└─────────────────────┼───────────────────────────┘
│
┌───────▼───────┐
│ Mistral AI │
│ (mistral- │
│ small-latest)│
└───────────────┘
Key design decisions:
- No backend, no database — all user data lives in
localStorage. Private by design, zero infrastructure to maintain for the POC. - API keys never reach the client — all Mistral calls go through Next.js server-side API routes.
- Context fingerprinting — the Insights API response is cached client-side and only re-fetched when the user's data meaningfully changes (new check-in, new memory, profile update), avoiding redundant AI calls.
- Shared context builder — a
buildAuraContext()utility serialises the user's profile, conditions, recent check-ins, and memories into a consistent context string injected into every Mistral prompt.
AI & Mistral Integration
Mistral AI 🚀 (mistral-small-latest) is the backbone of every intelligent feature in Aura. There are 6 distinct AI touchpoints, each with its own prompt and purpose:
1. Check-in Analysis — /api/checkin-analysis
Triggered immediately after each daily check-in. Receives the full check-in data (distress, intensity, sensitivity, mood, triggers, notes) alongside the user's profile, recent history, and memories. Returns:
- A personalised message responding to the user's current state
- An urgency level (
low/medium/high) to decide whether to surface the crisis pathway - A recommended exercise ID from a curated catalog of 7 evidence-based exercises
- A reason for the recommendation, shown directly in the UI
2. Insights — /api/insights
Triggered when the user opens the Insights page (with caching). Receives up to 21 check-ins and 20 memories. Returns a structured reading with 6 fields: opening, pattern, progress, understanding, priority, and trend. The prompt explicitly instructs Mistral not to summarise numbers back at the user, but to interpret them — like a knowledgeable human friend would.
3. Daily Nudge — /api/nudge
Triggered on the home screen when no check-in has been done yet today. Generates a contextual headline, detail, and priority_action (with a direct link into the app) to motivate the user to engage — personalised to their history and time of day.
4. Conversational Chat — /api/chat
Full streaming conversation with memory of the user's condition, check-in history, and previously extracted facts. The system prompt positions Aura as a knowledgeable companion — never a therapist, always honest, always warm.
5. Memory Extraction — /api/memory-extract
After each chat exchange, recent user messages are sent to Mistral to extract persistent facts worth remembering (e.g. "user works in an open-space office", "user tried sound therapy in 2023"). These are stored as structured AuraMemory objects and injected into all future prompts, making Aura progressively more personalised.
6. Conversation Title — /api/title-generate
Generates a short, meaningful title for each chat conversation based on its content, used to label past conversations in the chat history.
Tech Stack
- Next.js 16 (App Router) — frontend framework
- React 19 — UI
- Tailwind CSS v4 — styling
- Mistral AI 🚀 (
mistral-small-latest) — all AI features: check-in analysis, conversational chat, insights generation, memory extraction, daily nudges - localStorage — on-device data storage (no account required)
Special Track
Are you submitting to a special track? If so, which one?
- [ ] Alan Play: Living Avatars
- [ ] Alan Play: Mo Studios
- [ ] Alan Play: Personalized Wrapped
- [ ] Alan Play: Health App in a Prompt
- [ ] Alan Precision
What We'd Do Next
- Apple Health integration — automatically correlate sleep quality, noise exposure, and heart rate variability with daily check-ins to surface patterns users can't see on their own
- Clinician export — generate a structured PDF report of symptom trends, trigger frequency, and distress evolution over time, designed to be shared with an audiologist or ENT specialist
- Smart contextual reminders — push notifications that adapt to the user's patterns (e.g. nudging on evenings when distress historically spikes) rather than fixed daily alarms
- In-app sound therapy — white noise, nature soundscapes, and notched audio therapy tailored to each user's tinnitus frequency, directly integrated alongside the breathing exercises
Built With
- mistral
- nextjs
- react
- tailwind
Log in or sign up for Devpost to join the conversation.