Private P2P messaging with anonymous routing
Small private rooms, ephemeral identities, no accounts. Built with SvelteKit + Yjs + libtaior.
✅ P2P Direct: WebRTC connections, no central servers
✅ Anonymous Routing: libtaior AORP multi-hop encryption
✅ Local-First: Yjs CRDT, works offline
✅ Ephemeral IDs: taior:// addresses, no persistent accounts
✅ Configurable Privacy: Fast mode (low latency) or Mix mode (high privacy)
✅ No Metadata Leakage: Cover traffic, padding, timing obfuscation
# 1. Compile libtaior WASM (first time only)
cd ../libtaior
./build-wasm.sh
# 2. Install and run Hush
cd ../Hush
npm install ../libtaior/pkg
npm install
npm run dev
# 3. Open http://localhost:5173- Frontend: SvelteKit + Flowbite + Tailwind
- Sync: Yjs CRDT (conflict-free replicated data)
- Transport: BroadcastChannel (local) or WebRTC (P2P)
- Routing: libtaior WASM (AORP anonymous routing)
- Crypto: ChaCha20-Poly1305 + X25519 (via libtaior)
- Uses BroadcastChannel
- Syncs between tabs in same browser
- No network traffic
- Good for: Development, testing
- Direct browser-to-browser connections
- Requires signaling server for handshake
- All messages encrypted end-to-end
- Good for: Real private communication
To enable P2P, see INTEGRATION.md → "Configuración de transporte"
- Fast: 1-2 hops, ~50ms latency, basic anonymity
- Mix (Reinforced): 4-5 hops, ~500ms latency, high anonymity + cover traffic
- Adaptive: Dynamic 2-3 hops based on network conditions
Toggle "Reinforced privacy" in UI to switch between Fast and Mix.
QUICKSTART.md: 5-minute setup guideINTEGRATION.md: Complete architecture and P2P setup../libtaior/README.md: libtaior routing library../taior-protocol/: Protocol specification
- Generate: Create random room key
- Join/Switch: Connect to room
- Reinforced privacy: Enable Mix mode (multi-hop + cover traffic)
INTEGRATION.md → "Modelo de amenazas"
- Local sync with Yjs + BroadcastChannel
- libtaior WASM bindings
- WebRTC P2P transport
- Taior routing integration
- WASM compilation tested
- P2P tested between devices
- Public signaling server
- DHT-based peer discovery
- Native app (Tauri + QUIC)
Experimental research project. See individual component licenses:
- libtaior: AGPL-3.0-or-later
- Taior docs: CC BY-NC-SA 4.0