Inspiration

Most conflicts aren't about deep differences; they’re about two people failing to translate their pain into a language the other can hear. Defensiveness creates a wall of noise. I wanted to see if I could use AI to act as a digital filter—something that sits between two people, removes the ego, and reveals the hidden overlap where they actually agree.

## What it does Unsaid creates a digital "sanctuary." Two people in a conflict vent privately to a non-judgmental AI listener. I used local, private voice-to-text so users could speak their hearts without fear. The app then finds the core fears and wants that both people felt but never said out loud. The payoff is a cinematic, perfectly synchronized "Revelation"—a shared story that appears on both screens at once, proving they aren't as far apart as they thought.

## How I built it I had 60 minutes to build an emotional experience from scratch. I chose Astro and React for the UI, Three.js for a generative "breathing" background that responds to voice intensity, and GSAP to handle the heavy lifting of the cinematic transitions. The backend is a lightweight Bun WebSocket server designed to keep two people in a locked state machine. I integrated Transformers.js for local Whisper support to keep the venting phase completely private.

## Challenges I ran into The 1-hour clock was brutal. I spent too much time fighting with browser security—specifically getting audio to play on load and WebSockets to stay alive on different browsers. I had to pivot hard and build a "Cinematic Demo" controller to ensure the emotional flow was perfect for the video, even when the local networking was being temperamental. Engineering an AI to sound "chill" and human rather than robotic or corny was a constant battle of prompt iteration.

## Accomplishments that I'm proud of The "Drop." Despite the chaos of the build, the moment when the visuals settle and the text starts revealing line-by-line in sync on two different devices actually feels profound. It’s far from a finished product, but it successfully captures the feeling I was chasing.

## What I learned A 1-hour time crunch forces a radical focus on the "soul" of the app. I learned that visual and auditory atmosphere (the Three.js orb and the zen drone) do more to lower a user's defenses than any "smart" AI advice ever could.

## What's next for Unsaid The MVP is rough around the edges. I want to polish the transition from voice-to-text to make it truly seamless, move beyond the demo-controller into a robust async mode for people in different time zones, and eventually scale the "weaver" logic to help larger teams find common ground during high-stress projects.

Built With

Share this project:

Updates