// the find
jeremyckahn/chitchatter
Secure peer-to-peer chat that is serverless, decentralized, and ephemeral
Chitchatter is a browser-based P2P chat app built on WebRTC and Trystero (WebTorrent for signaling), with no server storing messages. It supports text, video, audio, screen sharing, and file transfers — all ephemeral, all encrypted in transit. Aimed at people who want to communicate without trusting a third-party service to handle their data.
Trystero for signaling is a smart choice — WebTorrent trackers are widely available and require zero infrastructure to operate. The peer verification via client-side public-key cryptography is a real feature, not theater — you can actually confirm you're talking to who you think you are. Self-hosting story is clean: fork, set a homepage URL, deploy to GitHub Pages, done. The SDK Web Component wrapper for iframe embedding is genuinely useful for apps that want drop-in private chat.
The ephemeral-by-design model is also a real constraint: no message history, no async delivery, both parties must be online simultaneously — this rules out a large class of use cases where 'private' and 'asynchronous' both matter. TURN relay dependency is hand-wavy; the default free TURN server has no SLA and the README effectively says 'it might just not work sometimes,' which is a bad failure mode for a tool people would use for sensitive communications. The iOS Safari reconnection bug (room drops when you switch apps) is a known unfixed issue that makes mobile use unreliable. Project is explicitly in maintenance mode — no new features planned, so any gap you find today stays a gap.