Full-Stack Video Conferencing Platform for Online Events
The Problem
An event technology company needed a video conferencing platform purpose-built for large-scale online events — hackathons, product launches, community meetups, and interactive virtual experiences. Standard conferencing tools couldn't deliver the synchronized playback, content management, and event-specific scheduling that their clients required. They needed a customized Jitsi Meet deployment that went beyond basic video calls — supporting synchronized multi-user video playback (where all participants watch the same content at the same moment), file uploads for event materials, and flexible event management APIs that could orchestrate complex multi-session virtual events at scale.
Why Building an Event-Grade Video Conferencing Platform Is Hard
Video conferencing for large-scale events introduces engineering challenges that go well beyond standard meeting tools:
- Synchronized multi-user playback is a distributed systems problem — when hundreds of participants need to watch the same video at the same moment, clock drift, network latency, and buffering differences across clients must be reconciled in real time. Even a 2-second desync breaks the shared experience
- Customizing Jitsi Meet without breaking it — extending an open-source conferencing core with custom video players, synchronized playback, and event-specific UI requires deep integration work that must preserve Jitsi's reliability while adding new capabilities
- Event-scale traffic is bursty and high-stakes — virtual events have fixed start times with hundreds of participants joining simultaneously. There is no "try again in 5 minutes"; if the platform cannot handle the burst, the event fails publicly
- Content management alongside live video — events require file uploads (slides, documents, resources), organized content libraries, and the ability to share materials during live sessions without disrupting the video experience
- Flexible scheduling across complex event structures — multi-track events with parallel sessions, breakout rooms, keynotes, and networking breaks require scheduling APIs that handle nested session hierarchies, participant routing, and real-time state management
- Full-stack build on open-source foundations — extending Jitsi Meet with synchronized playback, content management, and event APIs required custom NestJS backend services, Firebase real-time state, and AWS infrastructure working together reliably under event traffic
What We Did
Architecture & Custom Jitsi Deployment
- Designed the full-stack architecture with NestJS backend services on Node.js, deploying a customized Jitsi Meet instance with extended capabilities for event-specific features
- Deployed on AWS with auto-scaling infrastructure optimized for event traffic — pre-warmed capacity for scheduled start times and elastic scaling for peak concurrent sessions
- Established Firebase for real-time data synchronization — playback state, participant presence, chat messages, and event metadata delivered with sub-second latency
Synchronized Playback & Custom Video Player
- Built the customized Jitsi Meet video player with synchronized multi-user playback — all participants see the same video content at the same timestamp, controlled by event organizers
- Implemented the playback synchronization engine using Firebase real-time state — broadcasting play/pause/seek commands to all connected clients with clock-drift compensation and buffering alignment
- Developed the dual-mode interface — live conferencing mode for interactive sessions and synchronized playback mode for keynotes, with seamless transitions between them
Content Management & Event APIs
- Built the file upload and content management system — organizers upload slides, documents, videos, and resources that are organized per event and accessible to participants during sessions
- Developed the event management APIs with NestJS — session scheduling, participant registration, multi-track event structures, breakout room assignments, and real-time session state
- Implemented the event dashboard for organizers — session timeline management, participant monitoring, content library, and live event controls
Scalability & Reliability
- Load-tested the platform for large-scale event scenarios — hundreds of concurrent participants across multiple simultaneous sessions with synchronized playback and active chat
- Implemented connection quality monitoring and adaptive streaming to maintain stable video delivery across varying participant network conditions
- Built health monitoring and alerting across all services — Jitsi session quality, Firebase sync latency, and API response times — giving organizers real-time visibility during live events
Key Results
In Their Words
Bemyapp needed more than a video call tool — we needed an event platform. Trembit built exactly that, with synchronized playback and content management that our organizers love.
Their proactive team gets things done as if it were their own project.
What We Learned
Synchronized playback is harder than live streaming — because every client is a different clock
Live streaming has inherent latency tolerance; viewers accept a few seconds of delay. Synchronized playback demands that all participants see the same frame at the same moment. We built a Firebase-based sync controller that broadcasts authoritative timestamps from the organizer's client, with each viewer running a local correction loop that adjusts playback speed (not position) to converge on the target. Jumping to a new position creates visible glitches; gentle speed correction creates invisible alignment.
Customizing Jitsi Meet is a maintenance commitment, not a one-time fork
Every customization — the synchronized player, event-specific UI, extended participant controls — creates a delta from upstream that must be maintained across Jitsi updates. We architected our customizations as modular plugins and overlay layers rather than core modifications, so the base Jitsi deployment can be updated independently. The customization architecture was as important as the customizations themselves.
Event content management needs to be session-aware, not just file storage
Organizers don't think in terms of "uploaded files" — they think in terms of "the slides for the 2pm keynote." We built the content system with session-level scoping: files are uploaded to specific sessions, automatically presented to participants in the right context, and archived with the session recording afterward. The content system became part of the event narrative, not a separate file browser.
Need an Event Video Platform?
Book a 30-minute architecture session — we'll discuss your event platform requirements and the infrastructure decisions that matter most. No pitch deck. Just engineering clarity.