- DONE WebRTC (Web Real-Time Communication) Architecture
- ICE (Interactive Connectivity Establishment (ICE) - Framework allowing web browser with an Offer to connect to other peers by bypassing firewalls with a unique address and relaying data through a chosen Signal Channel server and exchanging information including the SDP (Session Description Protocol) metadata (which describes the multimedia content so both peers understand each other and what formats to expect when data is transferring) and the ICE Candidate (which exchanges information about their network connection and methods they are able to communicate with) and the receiving peer creates an Answer to send back.
- STUN (Session Traversal Utilities for NAT) - Protocol for you to discover the public IP address (given by Network Address Translation) of your router from the private IP address of your device by contacting a STUN server to determine any router restrictions preventing direct connection with another peer
- TURN (Traversal Using Relays around NAT) - Traverses the Symmetric NAT restrictions of routers (where they only accept connections from other peers you have previously connected to) by opening a connection and relaying data through a TURN server, and informing other peers to forward packet data to you through it
- Cross-Browser RTC App (with P2P Data Channels and Media)
- Shim - Since WebRTC is an early API, we need to include snippets of code that serve as a layer of abstraction to intercepts standard APIs and applies a configuration that allows a the not-yet-standardised approach to be compatible with various browsers