
WebVCall - WebRTC Video Calling Application
A peer-to-peer video calling application built with WebRTC and Quarkus, supporting room-based communication, real-time audio and video, and WebSocket-based signaling.
Project Overview
WebVCall is a modern peer-to-peer video calling application built with WebRTC, designed to provide real-time audio and video communication directly between browsers.
The application uses room-based communication, allowing users to create or join calls with a shared room code without requiring user accounts. It provides a responsive interface with camera and microphone controls, connection status indicators, and support for both dark and light themes.

Technical Challenges
One of the main challenges was establishing reliable peer-to-peer communication between browsers while handling the connectivity issues that can occur across different networks.
WebRTC is used for direct audio and video communication, while the Quarkus backend provides WebSocket-based signaling to help establish connections between participants. STUN and TURN servers are used to support NAT traversal and improve connectivity when direct peer-to-peer communication is not immediately possible.
Another focus was creating a simple calling experience without requiring account creation. Users can enter a display name, create or join a room using a room code, and start a call directly from the browser.
The interface also needed to work across different screen sizes, so the frontend was built with responsive HTML, CSS, JavaScript, and Tailwind CSS.
Project Gallery

Key Highlights
The project demonstrates several practical real-time communication and web development concepts:
- Peer-to-peer audio and video communication using WebRTC
- WebSocket-based signaling with Quarkus
- STUN/TURN support for NAT traversal
- Room-based communication using shared room codes
- No account required to join a call
- Camera and microphone controls
- Real-time connection status indicators
- Responsive desktop and mobile interface
- Dark and light mode support
- Tailwind CSS-based UI
- Quarkus backend with Java 21
WebVCallA browser-based video calling application focused on real-time peer-to-peer communication with a simple room-based experience.

WebVCall demonstrates how WebRTC can be combined with a Java and Quarkus backend to build a real-time communication application, with WebSockets handling signaling and STUN/TURN infrastructure helping establish connections across different network environments.