đŦ Real-time Chat Demo
Two independent clients syncing through SwirlDB upstream server. Each client has its own IndexedDB storage.
Client 1 (Alice)
Client 2 (Bob)
đ Status
đ§ Controls
âšī¸ Architecture
- Storage: IndexedDB (persistent, per-client)
- Sync: WebSocket binary protocol
- Server: Pure Rust (swirldb-server)
- WebSocket: ws://demo.swirldb.org:3030/ws
- HTTP Fallback: http://demo.swirldb.org:3030/sync/*
- Room: general
đ¯ Storage Hints Demo
- Messages: Synced to all clients
- Settings:
/user/{id}/prefs- upstream-only - Each client's preferences are private
- Server backs up settings but doesn't broadcast
đĄ Each client maintains its own local database in IndexedDB.
Messages sync through the upstream server to other clients in real-time.
User settings are stored in /user/alice/prefs and /user/bob/prefs
namespaces and only sync upstream (not to other clients).