MiroTalk RND
Random 1-on-1 video chat built with Node.js, Socket.IO, and WebRTC.
Live demo Self-host MiroTalk RND Review runtime sizing
How RND works
MiroTalk RND matches participants in a random one-to-one flow. The application server handles signaling, matching queue, and protections. Media is sent over WebRTC between peers when possible, with TURN fallback for restrictive networks.
| Concern | RND behavior |
|---|---|
| Participation | Two matched participants per session |
| Matching | Random queue-based pairing |
| Media | Direct peer-to-peer when possible |
| Network fallback | TURN relay when required |
| Server role | Signaling, queueing, rate limiting, and capacity guards |
Compare product architectures Read about STUN and TURN
Chat capabilities
- Random peer matching
- Video and audio chat over WebRTC
- Skip/next match and end session controls
- Mic/camera toggle and self-preview controls
- Device selection and mobile-friendly UI
- Optional virtual background (blur or image)
Self-host and operate
| Stage | Documentation |
|---|---|
| Install with Node.js or Docker | Self-hosting guide |
| Automate install, update, and uninstall on Ubuntu | RND setup scripts |
| Configure runtime and limits | Configuration reference |
| Expose local development securely | Ngrok guide |
| Plan infrastructure sizing | Metrics and capacity notes |
Current scope
MiroTalk RND does not currently provide the same REST API and webhook surfaces documented for other MiroTalk products.