Inspiration
Unspoken began with two kinds of grief.
After a seven-week-old baby girl in my family died from SIDS, her mother kept saying, “I wish I could write her a letter, send it to her, and receive some kind of response.” She was not looking for an answer that could undo the loss. She needed somewhere for her love, pain, and unfinished words to go—and perhaps a few gentle words to help her carry them.
When my own mother died, I was left with questions, anger, responsibilities, and things I still needed to say. Her affairs had been left unfinished, and handling everything afterward required more work than she may have ever known. I wanted to tell her how difficult it had been. I wanted her approval. Most of all, I needed to say the words, release them, and move forward without having them judged, corrected, or saved and brought back years later.
I have learned something simple but important: I almost always feel better after I finally say what I have been carrying.
What it does
Unspoken is a private place to express what never had the chance to be said. A person writes freely and then chooses what happens next: release the words without a reply, receive one gentle response, get help shaping words for a real conversation, receive a prayer, receive a faith-based reflection, or receive a clearly marked imagined Whisper.
Each experience is intentionally brief. Unspoken does not create streaks, demand a continuing conversation, or bring old writing back later. A daily “Be gentle with yourself” message offers a calm beginning, and the user chooses either a daily affirmation or Scripture for the closing.
Unspoken is not meant to replace a loved one, therapy, friendship, or crisis care. It gives difficult feelings somewhere safe to exist for one moment, so the person carrying them may leave a little lighter.
How we built it
We designed Unspoken as a mobile-first progressive web app using React, TypeScript, Vite, Tailwind CSS, Node.js, and the OpenAI API. Codex helped turn the original idea into the working product, refine the interaction flow, build and test the response modes, and identify failures in tone, relationship context, and safety handling.
The app uses the writer’s selected mode and relationship context to guide the AI response. Prompts are designed to acknowledge the person’s actual words, avoid generic comfort, avoid pretending to truly be a deceased loved one, and never produce cruel, shaming, retaliatory, or manipulative language. Safety routing recognizes possible self-harm or harm-to-others language and replaces the normal response flow with grounding steps and crisis-support options.
Challenges we ran into
The hardest challenge was not generating words—it was generating the right kind of words. Early responses could be polished but emotionally wrong, too generic, or mistaken about who was speaking to whom. A mother writing to her baby should not be called “baby” by mistake, and a person describing present-day worry should not receive a grief response meant for bereavement.
We improved the experience by adding relationship context, separating each response mode, tightening the prompt rules, testing many different emotional scenarios, and creating fallback responses for service interruptions. We also had to balance privacy, safety, empathy, cost, and simplicity without turning Unspoken into an endless chatbot.
Accomplishments that we're proud of
We created a working, installable mobile experience that lets people say difficult things without judgment and choose exactly how the moment closes. The product has a clear identity, a calm and inclusive visual design, immediate AI responses, privacy-first release behavior, faith and non-faith options, and a safety path that does not sensationalize distress.
Most importantly, Unspoken stays focused on its original purpose: say what was left unspoken, let it exist for a moment, and leave a little lighter.
What we learned
We learned that emotional accuracy matters more than beautiful wording. A response must understand who the writer is addressing, what happened, what they are feeling now, and what kind of response they chose. We also learned that helpful emotional technology needs firm boundaries: it should not impersonate a real person, diagnose, shame, encourage dependence, or claim it can solve everything.
What's next for Unspoken
Next we will expand structured safety testing, continue testing responses across grief, separation, regret, conflict, love, parenting, and everyday overwhelm, and have the experience reviewed by mental-health, grief-support, safety, privacy, and legal professionals. We also plan to strengthen server-side usage limits, subscriptions, accessibility, localization, and app-store delivery while preserving the short, private, no-streak experience.
Built With
- cloudflare
- codex
- drizzle-orm
- gpt-5.6
- next.js
- node.js
- openai
- openai-api
- progressive-web-app
- react
- tailwind
- tailwind-css
- typescript
- vite

Log in or sign up for Devpost to join the conversation.