← Blog
13 June 2026

The week Prudence stopped being a demo

New to MeshWhisper? Start here — short version: end-to-end encrypted messaging for any app, through a relay that can’t read a word of it. Prudence is the reference app built on it, and the one this post is about.

There’s a gap nobody warns you about, between “it sends encrypted messages” and “it’s a messenger.” The first is a cryptography result. The second is two hundred small mercies — the draft that’s still there when you come back, the search box that finds the thing you said on Tuesday, the message you can take back ten seconds after sending it to the wrong person. None of them are hard. All of them are the difference between a demo you clap at and an app you forget you’re using, which is the highest compliment software can earn.

Prudence had the first thing for a while. This was the week it went after the second.

The boring features, which are the whole game

Here is the unglamorous list, and I want it to be boring, because boring is the point:

None of these will headline a release. Together they’re the reason you’d keep the tab open.

Two that matter more than they look

A couple of things this week aren’t ergonomics — they’re posture.

Export my data. A Settings button that hands you everything Prudence holds about you, encrypted with a passphrase you choose, in a file you keep. No “request your data and we’ll email it in 30 days.” It’s your machine; it was always your data; now there’s a button that admits it. (It covers your identity and contacts today; full message-history export is the next notch, and it’s on the record as such.)

Verifying a contact, in the app. Safety numbers — the out-of-band “are you really you” check, the same idea Signal uses — are now wired into Prudence itself, not just a capability in the SDK underneath it. You can compare numbers with someone and mark them verified. Trust you can check beats trust you’re asked to assume.

The one that’s a seed

And then there’s adding a contact by QR code — point your camera at someone’s phone, and you’re paired. No username to type, no directory to look anyone up in, no central anything in the loop. The invite on their screen already carries everything your device needs: their key, their coordinates, the lot.

It reads like a convenience feature. It’s quietly something larger. Notice what didn’t happen when you added that contact: you didn’t ask a server who they were. There was no lookup, because there was no directory to look in. The two of you exchanged cryptographic coordinates directly, out of band, the way you’d hand someone a business card.

Hold onto that, because it’s the thread the next couple of posts pull on. Once adding someone needs no central directory, a question starts to itch: if there’s no directory deciding who you can reach — why should it matter which app they’re using at all?

We’ll get there. First, let’s prove the relay really can’t read any of this.

Prudence · GitHub · Prudence is MIT-licensed and is the living reference an adopter cribs from — it’s in the repo.

Questions or adopting MeshWhisper? Open an issue — adoption reports shape priorities.