floe.one. The setup uses Docker Compose so the full stack comes up with a single command.
What you are hosting
The signaling server brokers WebRTC connection setup (offer, answer, ICE candidates) and issues short-lived TURN credentials. File data never passes through it. Transfers go peer-to-peer over encrypted WebRTC data channels. TURN is optional and only relays (still encrypted) traffic when a direct connection is not possible.Components
| Component | Description |
|---|---|
client | Next.js web app, served on port 3000 |
server | Node.js signaling server, on port 3001 |
coturn | Optional TURN relay (profile-gated in Docker Compose) |
Contents
Quick Start
Get the stack running with Docker Compose in minutes.
Configuration
Environment variable reference for all settings.
Production Deployment
HTTPS, reverse proxy, and domain setup.
TURN Relay
Add coturn to support peers behind strict NAT or CGNAT.