Inspiration

Survivors are told over and over to "reach out," but reaching out is the hardest part. Hotlines can feel clinical. Support groups mean sharing in front of strangers on someone else's schedule. Social apps expose your identity and let anyone message you.

Most tools try to protect survivors with policies and promises. We took the opposite approach: design the system so there is almost nothing to expose in the first place. No names, no emails, no photos, no raw intake transcripts. Then add control on top, so every survivor decides who she talks to, about what, and how fast.

What it does

iHear matches women and girls with other survivors who've been through similar experiences. Every account is verified, everyone is anonymous, and each person sets her own pace and boundaries.

1. Minimal, private signup

  • Phone number and password only. No name, no email. The phone number is stored only as a hash.
  • A one-time selfie check keeps the space women and girls only, including trans women. Only a yes/no "verified" flag is kept, never the photo. (Simulated in the demo.)
  • Birth year places you in a teen space (13–17) or an adult space (18+). The two never meet. Under-13s are turned away and pointed to the Childhelp hotline.

2. A conversation, not a form

  • Claude asks what you're dealing with, what support you want, and what you're not comfortable with. It never asks for details of what happened.
  • Your words stay in your browser and are deleted once your profile is built.
  • If you mention self-harm or danger, hotlines appear immediately.

3. A profile you approve

  • AI drafts it from the chat. You edit and approve it before anyone sees anything.
  • It covers topics (never details), where you are (just happened, still processing, further along), what you're looking for (a listener, shared experience, someone further along, practical help, friendship), what you can offer, and your boundaries ("don't ask for details," "no advice unless I ask," plus your own).
  • A short "story in brief" stays private until you choose to share it.

4. Matching that respects boundaries

  • Deterministic code scores every candidate on shared experience, your needs versus their offerings, stage, and boundary clashes.
  • Claude reasons over the top candidates, picks your top 3, and writes a plain-language "why you matched" note for each.
  • Before connecting, a match sees only your topics and boundaries.

5. Consent-first connection and chat

  • Both people must say yes before a chat opens. Nobody gets cold-messaged.
  • The other person's boundaries are pinned at the top of every conversation.
  • AI message check: before a message sends, it flags anything that crosses the recipient's boundaries, asks for or shares contact info, tries to move the conversation off the app, or suggests the sender may be in crisis.
  • Pause a connection ("she needs some space"), end it, or report it. Reporting also ends it.
  • Each match sees you under a different random name, so two matches can't compare notes to identify you.

6. Safety everywhere

  • A quick-exit button (or press Esc twice) jumps instantly to a weather page.
  • A "Get help" page lists RAINN, 988, Crisis Text Line, the domestic violence hotline, and more, with a teen-specific list.
  • Every page is kept out of search engines.

How we built it

  • AI layer: Claude powers the intake conversation, profile drafting, top-3 selection and match explanations, the pre-send message check, and the demo peers.
  • Hybrid matching: deterministic scoring where the system must be predictable and auditable, and LLM judgment where it should be human. Code ranks the whole pool on experience overlap, need/offer fit, stage, and boundary conflicts. Claude then narrows to three and explains each one. Scoring never depends on the AI being available.
  • Resilience: every AI feature has an offline fallback, so the app works with no API key and degrades gracefully if the API goes down.

Privacy and safety by design

Our rule: a breach of iHear should expose no names, no emails, no photos, and no intake transcripts, because we never stored them.

  • Data minimization: no name, email, or photo stored. Raw intake text is deleted from the browser once the profile is built. The app collects topics, never trauma details.
  • Anonymity: a different random alias per match defeats cross-referencing.
  • Consent as a gate: mutual opt-in before any chat, and the sharer controls when her story is revealed.
  • Age separation: teens and adults never meet, with separate resources for each.
  • Boundaries enforced twice: at match time and again on every message.
  • Crisis-aware AI: self-harm and danger signals surface hotlines immediately, in intake and in chat.
  • Honest limits: iHear is peer support, not therapy or crisis care, and it says so.

Challenges we ran into

  • Turning feelings into data without flattening them. Structuring what someone needs without making intake feel clinical took several rewrites. We also had to guarantee the AI never invites trauma details, because we refuse to collect them.
  • Boundaries can't be a preference. Our first version matched on similarity, which could pair someone with a peer who wanted to discuss exactly what she'd marked off-limits. We rebuilt the system so boundary conflicts count against a match at scoring time, then added an AI check on every message as a second line of defense.
  • Anonymity vs. usefulness. A match needs enough information to be meaningful and not enough to identify anyone. That led to topics-only previews, a private "story in brief," and a unique alias per match.
  • AI that never becomes a single point of failure. For a safety-critical product, "the API is down" can't mean "the app is down." We built an offline fallback for every AI feature, so the core flow, including the safety resources, always works.
  • Safety vs. friction. Verification, moderation, and reporting each make onboarding heavier. We chose what was essential for an MVP and documented the rest.

Accomplishments that we're proud of

  • A complete end-to-end flow: signup, intake, profile, matching, mutual consent, and a guarded chat
  • Privacy designed in from the first screen: hashed phone, no photo kept, no raw intake text, per-match aliases
  • An AI message check that protects the person receiving a message, not just the one sending it
  • A separate teen space with its own resources
  • Fully working demo with no API key, plus 16 varied demo peers (12 adult, 4 teen) so judges can experience the whole flow

What we learned

Designing for vulnerable users changes every decision. Copy, defaults, and even the order of screens matter more when someone may be having a hard day. We learned that "safe" is a design problem as much as a technical one, and that the strongest privacy feature is data you never collect. Technically, we learned to split responsibilities cleanly: deterministic code for anything that must be predictable, and an LLM for what needs empathy and judgment.

What's next for iHear

  • Real identity verification through a privacy-preserving provider, replacing our demo simulation
  • End-to-end encrypted chat, so even we can't read conversations
  • Human moderation and escalation paths that route users to professional crisis resources when a conversation needs more than a peer
  • Peer training so supporters know what not to say
  • Partnerships with survivor-support organizations (rape crisis centers, domestic violence shelters, campus programs) to reach users through channels they already trust
  • Better matching over time using opt-in feedback after conversations
  • Mobile app, accessibility, and multilingual support

Built With

Share this project:

Updates

Submission history