For this to be cool, you need to click the "yes you can use my webcam" button above
What is this?
This is a demo of some things you can do with webRTC.
What it does
First, it uses AngularFire to connect
to a real-time Firebase database to get a list of users on this page
Then, it uses a service called PeerJS
to simplify and abstract away some of the details of creating an
RTCPeerConnection to ever other person viewing this page
Then, using that RTCPeerConnection it establishes a RTCDataChannel
w/ each peer, enabling communication of arbitrary data
(in this case chat messages and file uploads)
Then, using navigator.getUserMedia
it asks you to caputure your webcam and it also establishes a p2p
video connection with every other person viewing this page
It uses that video connection as the "live" avatar next
to your name in your chat messages
When you send a chat message or upload files, it sends it
directly to each peer connected. no messages,
files, or video ever go through a server
TL,DR: video/text chat & p2p file sharing using no servers
(except to get a list of who's online) and no plugins (no flash)
Read the Source on github.
If you have any questions email me at my github username at gmail.