ascii-chat is a production-grade terminal-based video conferencing application that converts live video and audio streams into real-time ASCII art rendered in the terminal. It operates in multiple modes: server (multi-client host), client (connect to server), mirror (local preview), discovery (peer-to-peer session participant), and discovery-service (session registry and NAT traversal relay). The system uses a custom binary protocol (ACIP) over TCP/WebSocket/WebRTC, with end-to-end encryption (Ed25519 + X25519 + XSalsa20-Poly1305) and support for SSH/GPG key authentication. A companion web client compiled via WebAssembly mirrors functionality in the browser. The codebase includes a standalone reusable C library (libasciichat) with a comprehensive platform abstraction layer (POSIX/Windows/WASM), a declarative options registry that auto-generates man pages and shell completions, SIMD-accelerated ASCII rendering (AVX2, NEON, SVE, SSE2), lock-free data structures, and a sophisticated logging system with crash-safe mmap output. The architecture is modular and cross-platform, with extensive unit, integration, and E2E test coverage across Linux, macOS, Windows, and WebAssembly targets.
SRS (Simple Realtime Server) is a high-performance, multi-protocol media streaming server primarily written in C++ with a newer Go-based proxy component (SRSX). It ingests, processes, and delivers live audio/video streams via RTMP, WebRTC (WHIP/WHEP), HLS, HTTP-FLV, SRT, and GB28181. The core C++ engine uses a coroutine model built on state-threads, implements stream forwarding, transcoding via FFmpeg, and provides a full HTTP API for management. The Go proxy component (cmd/proxy, internal/) adds load balancing, Redis integration, and protocol proxying for RTMP/HTTP/WebRTC, designed to scale origin/edge deployments. The repository also includes extensive research code, blackbox integration tests, and vendored third-party libraries (FFmpeg 4, OpenSSL 1.1, gperftools, SRT, libsrtp) that have been customized with a '-fit' suffix. This hybrid architecture is actively developed with multiple CI workflows and a large test suite, though some vendored dependencies are older and may require security updates.
Jitsi Meet is an open-source video conferencing platform that provides real-time communication with features such as HD audio/video, screen sharing, chat, polls, breakout rooms, recording, live streaming, virtual backgrounds, and end-to-end encryption. The architecture is client-server: the web and mobile clients (React/React Native) communicate via XMPP (Prosody server) for signaling and WebRTC for media, with optional server-side components like Jitsi Videobridge and Jicofo for scalable conferencing. The codebase is organized into feature modules under `react/features/`, each with its own Redux actions, reducers, middleware, and platform-specific UI components (web vs. native). Key entry points include `app.js` for the web app, `react/index.native.js` for mobile, and native SDKs for iOS and Android. External dependencies include Prosody, Jitsi Videobridge, Jicofo, and various third-party services (Google, Microsoft, Dropbox, Amplitude). The project also includes server-side Prosody plugins (Lua) for authentication, room management, and monitoring, as well as a comprehensive test suite using WebDriverIO and custom load testing frameworks.
MiroTalk P2P is a self-hosted, open-source WebRTC video conferencing application that enables real-time peer-to-peer video calls, audio calls, screen sharing, chat, whiteboard collaboration, file sharing, and recording. The architecture consists of a Node.js/Express server with Socket.IO for signaling and a REST API (v1) for programmatic meeting management, token generation, and statistics. The client is a single-page application with modular JavaScript files handling UI components, media processing, accessibility, and integrations. Key features include end-to-end encrypted media (SRTP/DTLS), noise suppression via RNNoise AudioWorklet, live captions (Web Speech API and server-side Whisper transcription), ChatGPT integration, OIDC authentication, JWT-based API security, and an embeddable support widget. The system is designed for privacy: no persistent storage of signaling data, chat, or media; recordings stay in the browser as Blobs. Deployment options include Docker, Kubernetes, and bare-metal, with support for CoTURN TURN servers, ngrok tunneling, and email alerts via Nodemailer. The codebase is well-structured with separate modules for security (XSS sanitization, input validation, host protection), logging, and integration helpers, though the main server.js is monolithic (~2000 lines) and the client-side CSS is large (~5000 lines combined).
This repository provides a Helm chart for deploying the full Jitsi Meet stack on Kubernetes. Jitsi Meet is an open-source video conferencing platform. The chart includes components for the web UI, XMPP server (Prosody), focus manager (Jicofo), video bridge (JVB), TURN/STUN server (coturn), SIP gateway (Jigasi), recording/streaming (Jibri), transcription services (Skynet, Opus Transcriber Proxy), and collaborative editing (Etherpad, Excalidraw). The chart is structured with separate template directories for each component, common helper templates for naming and labels, extensive configuration in values.yaml, and optional monitoring via Prometheus/Grafana dashboards. It supports advanced features like autoscaling (HorizontalPodAutoscaler for JVB), ingress, Kubernetes Gateway API, custom file injection, and security hardening with read-only root filesystems and dropped capabilities. The repository also includes a GitHub Actions workflow for publishing the chart as an OCI artifact to GitHub Container Registry with cosign signing, plus detailed documentation guides for exposing services, recording, transcription, scaling, and upgrading. The chart is actively maintained with frequent releases (latest v3.9.0) and follows standard Helm repository conventions.
BigBlueButton is an open-source web conferencing system designed for online learning. It provides real-time audio/video, screen sharing, whiteboard, chat, polling, breakout rooms, and recording/playback. The architecture is distributed and polyglot: a Scala/Akka backend handles meeting logic and state via Redis pub/sub; a Java API layer exposes REST endpoints for meeting creation and recording management; a React frontend with GraphQL subscriptions enables real-time collaboration; Ruby workers process recordings; and a Go GraphQL middleware optimizes subscription delivery. The system integrates with FreeSWITCH for legacy voice and LiveKit for modern WebRTC audio. A plugin SDK allows third-party extensions via customizable UI areas and data consumption hooks. Despite a large feature set and active development, the codebase suffers from significant technical debt due to its multi-language nature, incomplete migrations (e.g., from Meteor to pure React), duplicated logic across frontend and backend, and outdated library versions. Reusable components include the Redis pub/sub framework, GraphQL subscription deduplication hooks, and an annotation export service.