Zero-knowledge encrypted ephemeral chat rooms.
- End-to-end encryption - NaCl (TweetNaCl) for message encryption
- Real-time messaging - WebSocket-based communication
- Ephemeral rooms - Auto-delete when all participants leave
- Zero-knowledge - Server never sees your messages
- File sharing - Share encrypted files in chat
- No signup required - Just create and share the link
- Frontend: React 19, Vite 7, Tailwind CSS 4, Framer Motion
- Backend: Cloudflare Workers with Durable Objects
- Encryption: TweetNaCl (NaCl), Web Crypto API
npm install
npm run devThe API uses Cloudflare Durable Objects for real-time WebSocket connections.
See /api/README.md for details.
npm run build
wrangler pages deploy dist --project-name=voider-chatcd api
wrangler deploy- Create room: Generate NaCl keypair client-side
- Join room: Exchange public keys via WebSocket
- Send message: Encrypt with recipient's public key
- All encryption happens in the browser
MIT License