THis is not without servers, you still use a signaling server for TURN.<p>If you want true serverless you need a side channel to copy the offer/response, e.g. tell the user's to copy paste them as base64 thorugh whatsapp manually or something (<a href="https://github.com/pirate/webrtcchat" rel="nofollow">https://github.com/pirate/webrtcchat</a>).
Matrix was once working on something similar, I wonder what the latest status is.<p>In general, things like this are a great way around current pushes for age verification and mandatory surveillance. Give your friends a link to this, or even a web archive via USB stick, and chat directly without intermediaries. No need to run a server.<p>(Others pointed out you still need a TURN server. True but hopefully there’s a P2P solution for this.)
You should mention that it uses PeerJS. That's not without servers. PeerJS runs their own signaling server which you are relying on to connect your peers.
I wanted to be able to talk to anyone in the world without relying on any company's servers. No censorship, no rules, no limits except the ones I set in my own room. So I built this.<p>No signup, no registration. Just create a room with a password, share the code, and anyone can join directly. Everything is peer-to-peer, ephemeral, and disappears when you close the tab.<p>Would love to hear what you think. Code is open source.
Link: <a href="https://ephemchat.vercel.app/" rel="nofollow">https://ephemchat.vercel.app/</a>
Source code: <a href="https://github.com/zzrinexd/EphemChat" rel="nofollow">https://github.com/zzrinexd/EphemChat</a>
Many users in the world are behind CGNAT or symmetrical NAT, and if both sides are, they will not be able to use WebRTC unless there is a TURN relay server involved. Does your software have a way to account for this?
Great question! Currently it uses Google's public STUN servers, which works for ~85% of connections. For the remaining cases, I'm planning to add a community-maintained list of TURN servers or a P2P fallback mechanism.
This is great, thanks! Would you accept a Github pull request to translate it to English and several other languages?
- does the room vanish after the last user exits? Seems like it?<p>- can the room code be tacked on to the url/slug?
Lol do your DD properly before posting
What about use of TURN, entirely avoided?