mirror of
https://github.com/xtr-dev/rondevu-server.git
synced 2025-12-10 02:43:24 +00:00
101697d846c4d4b290a5bbc4d16032a71ffbf5be
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Rondevu
🎯 Simple WebRTC peer signaling and discovery
Meet peers by topic, by peer ID, or by connection ID.
Related repositories:
- rondevu-client - TypeScript client library
Rondevu Server
HTTP signaling server for WebRTC peer discovery and connection establishment. Supports SQLite (Node.js/Docker) and Cloudflare D1 (Workers) storage backends.
Quick Start
Node.js:
npm install && npm start
Docker:
docker build -t rondevu . && docker run -p 3000:3000 -e STORAGE_PATH=:memory: rondevu
Cloudflare Workers:
npx wrangler deploy
API
# Create offer
POST /:topic/offer {"peerId":"alice","offer":"..."}
# List sessions
GET /:topic/sessions
# Send answer
POST /answer {"code":"...","answer":"..."}
# Poll for updates
POST /poll {"code":"...","side":"offerer|answerer"}
See API.md for details.
Configuration
Environment variables:
| Variable | Default | Description |
|---|---|---|
PORT |
3000 |
Server port (Node.js/Docker) |
SESSION_TIMEOUT |
300000 |
Session timeout in milliseconds |
CORS_ORIGINS |
* |
Comma-separated allowed origins |
STORAGE_PATH |
./sessions.db |
SQLite database path (use :memory: for in-memory) |
License
MIT
Description
Languages
TypeScript
97.9%
Dockerfile
1.3%
JavaScript
0.8%