Anon
All-hands meetings have a Q&A problem. Someone asks leadership about layoffs or strategy, and everyone knows who asked. Some teams use Google Forms or internal tools, but they require authentication or share your email anyway.
I don't trust "anonymous" tools, so I built Anon. It uses WebRTC for peer-to-peer communication and has an optional embedded AI to rewrite your question in a neutral voice. No server, no logs.
Why It Matters
Town halls only work if people ask real questions, and they don't. Not because employees don't have questions, but because asking the wrong one can hurt you. After layoffs, or in orgs where culture is tense, the math changes, and getting an answer isn't worth being known as the person who asked.
Anonymous tools exist, but they route through servers. Someone controls that server, and even if policy says "we don't look," the capability is there, and policies bend.
WebRTC
When you create a room, you're connecting directly to other participants through the browser. There's no backend, no database, questions exist only in browser memory. When everyone closes the tab, they're gone. They're not deleted, they're never stored.
The initial connection uses a public PeerJS relay to help browsers find each other, but the relay never sees question content, and once connected, data flows peer-to-peer.
I couldn't log your questions if I wanted to, there's nowhere to log them.
Style Anonymization
Writing style is a fingerprint. If you're the only person who uses semicolons in Slack, your "anonymous" question isn't anonymous, and people pattern-match.
Anon has an optional feature that rewrites your question in a neutral voice. It uses LaMini-Flan-T5, a 783M parameter text-to-text model that runs entirely in your browser. The model downloads once (~1.5GB, cached in IndexedDB), runs in a Web Worker so it doesn't freeze the UI, and your question never leaves your device. You review the rewrite before submitting.
In a room of 500 people, "that sounds like something Sarah would ask" happens more than you'd think, and style anonymization removes that.
Trade-offs
No persistence means everyone needs to be in the room at the same time, no identity means you can't follow up on your own question without outing yourself, and no backend means no moderation. Questions appear as submitted.
For real-time Q&A where anonymity matters, these are fine. For async or moderated use cases, this isn't the right tool.
Try It
Create a room, share the link, ask questions. No signup, no accounts.