Resonance

Matched on what you said, not what you swiped

Answer a few open questions in your own words. Resonance distils them into a private signature on your phone and finds people who fit — without your answers ever leaving the device.

Five questions, in your own words

No height field, no drop-downs, no checklist of hobbies. Resonance asks what an ordinary perfect day looks like, what you could lose hours to, when you feel most like yourself, and what you'd never compromise on. As you answer, the bloom at the top of the screen grows — a generative shape seeded by your own signature, so it's yours and nobody else's. Prose counts for more than the chips you tap, because it says more.

Resonance welcome screen with a generative bloom graphic, the heading Let's find your resonance, and a note that your words stay on this phone

From your words to a room with one other person

Four steps, and identity only shows up at the last one.

DistilYour answers are turned into a signature by a model running on your phone. The raw text never goes anywhere.
AbstractThat signature is reduced to a set of one-way hashed buckets. Those integers are the only thing that ever travels.
DiscoverYou see candidates ranked by how many buckets you share — no name, no age, just a lock pill, the themes you have in common, and how strongly you resonate.
RevealSay curious. If they already did, or do later, both blooms drift together and the name appears. Only then.

Claims we can point at the code for

Privacy here is a property of the protocol, not a promise in a settings screen.

The server has nowhere to put your answersThe database schema has no column for answer text, themes, or any sentence you wrote.
It refuses your signature even if askedThe upload endpoint discards any vector a client sends and stores only the bucket hashes.
The coordinator is treated as untrustedIt ranks people by shared buckets and never holds anything it could read back into words.
Match data is encrypted end to endPeer signatures travel as AES-256-GCM blobs the server can't open, and the format is tested to reject tampering.
Names are withheld by the protocolIdentity is released only when both sides have said curious — not hidden by the UI, withheld by the exchange.
Conversations can stay on your deviceRooms sync peer-to-peer with a six-character code you can read aloud, and work offline. A relay is optional.

Once you match

A private room where names live and nowhere else, with presence showing "here now" when they're reading. Alongside it, a short read on why you two might click — composed on your device from both signatures, though neither of you ever saw the other's answers — and openers drawn from what you actually have in common, for when "hey" isn't doing it. One switch changes whether you're shown dating or friends, and the first ten introductions are free.