# BigBlueButton — Open Source Virtual Classroom and Web Conferencing > BigBlueButton is a self-hosted web conferencing system designed for online learning. It provides real-time audio, video, screen sharing, collaborative whiteboard, breakout rooms, and recording — all within a browser. ## Install Save as a script file and run: # BigBlueButton — Open Source Virtual Classroom and Web Conferencing ## Quick Use ```bash # Install on a dedicated Ubuntu 22.04 server (min 8 GB RAM, 4 cores) wget -qO- https://raw.githubusercontent.com/bigbluebutton/bbb-install/master/bbb-install.sh | bash -s -- -v jammy-300 -s bbb.example.com -e admin@example.com ``` ## Introduction BigBlueButton is purpose-built for online education, offering a full web conferencing stack that runs on your own infrastructure. Schools, universities, and training organizations use it to deliver live virtual classes with interactive teaching tools. ## What BigBlueButton Does - Streams real-time audio and video using WebRTC with no plugins required - Provides a multi-user whiteboard for collaborative drawing and annotation - Supports breakout rooms for small-group activities during a session - Records sessions with synchronized audio, video, slides, and chat for later playback - Offers polling, shared notes, and emoji reactions for student engagement ## Architecture Overview BigBlueButton is composed of several services: a Scala-based application server handles meeting logic, FreeSWITCH manages audio mixing, Kurento/mediasoup provides video routing, and a Node.js service manages the HTML5 client. Nginx ties the components together as a reverse proxy. Recordings are processed asynchronously into a browser-playable format. The system uses Redis for inter-process messaging and MongoDB for client state. ## Self-Hosting & Configuration - Use the official install script on a dedicated Ubuntu server with a public hostname and valid SSL - Allocate at least 8 GB of RAM and 4 CPU cores for a small deployment - Integrate with LMS platforms like Moodle, Canvas, or Sakai via the built-in LTI connector - Configure TURN/STUN servers for reliable WebRTC connectivity behind firewalls - Scale larger deployments with Scalelite, a load balancer that distributes meetings across multiple BBB servers ## Key Features - Presentation upload with slide-by-slide navigation and annotation - Multi-user whiteboard with drawing tools, text, and shape support - Closed captions and live transcription for accessibility - Webcam sharing with configurable quality and layout options - REST API for programmatic meeting creation and management ## Comparison with Similar Tools - **Jitsi Meet** — lightweight video conferencing focused on simplicity; BigBlueButton adds education-specific features like whiteboard, breakout rooms, and LMS integration - **Zoom** — commercial platform; BigBlueButton provides similar classroom features as self-hosted open-source software - **Google Meet** — consumer video calling; lacks whiteboard, breakout rooms, and recording processing - **OpenVidu** — WebRTC platform for developers building custom video apps; BigBlueButton is a complete conferencing product - **Matrix/Element** — decentralized messaging with video calls; BigBlueButton is specialized for structured classroom sessions ## FAQ **Q: How many users can a single BigBlueButton server support?** A: A server with 8 cores and 16 GB RAM typically supports 100-150 concurrent users. For larger deployments, use Scalelite to distribute load across multiple servers. **Q: Can I embed BigBlueButton in my website or LMS?** A: Yes. BigBlueButton provides LTI integration for Moodle, Canvas, and other LMS platforms, plus a REST API for custom embedding. **Q: Are recordings stored locally?** A: Yes. Recordings are processed and stored on the server. You can configure external storage or move recordings to object storage after processing. **Q: Does it work on mobile devices?** A: The HTML5 client works in mobile browsers on both iOS and Android without requiring a native app. ## Sources - https://github.com/bigbluebutton/bigbluebutton - https://docs.bigbluebutton.org/ --- Source: https://tokrepo.com/en/workflows/d98454b8-4125-11f1-9bc6-00163e2b0d79 Author: Script Depot