Welcome to lib-jitsi-meet
lib-jitsi-meet is a powerful JavaScript library that provides direct access to Jitsi Meet server-side video conferencing services. Build custom video conferencing applications with full control over the user interface and behavior.Installation
Get started with npm, yarn, or pnpm package installation
Quick Start
Create your first conference in minutes with real code examples
API Reference
Explore the complete API documentation
What is lib-jitsi-meet?
lib-jitsi-meet is the core library powering Jitsi Meet, providing WebRTC functionality, XMPP communication, and media handling. Use it to create custom Jitsi Meet video conferences with your own GUI.Key Features
WebRTC Media Management- Create and manage local audio/video tracks with
createLocalTracks() - Handle remote participant tracks with automatic event notifications
- Support for camera, microphone, and screen sharing
- Advanced track effects and stream manipulation
- Connect to Jitsi Meet servers via XMPP/WebSocket
- Join and manage multi-user video conferences
- Handle participant events (join, leave, mute, etc.)
- Support for both JVB (multi-party) and P2P connections
- Built-in E2EE support using insertable streams
- SFrame encryption for enhanced privacy
- Automatic key management via Olm
- Adaptive video quality based on bandwidth
- Codec selection and preference (VP8, VP9, H.264, AV1)
- Last-N forwarding for large conferences
- Simulcast and SVC support
- Audio level monitoring and VAD (Voice Activity Detection)
- Recording and live streaming (Jibri integration)
- Screen sharing with desktop picker
- React Native support for mobile applications
- TypeScript type definitions included
Architecture Overview
lib-jitsi-meet uses an event-driven architecture with clean separation between signaling (XMPP) and media (WebRTC) layers:- JitsiMeetJS - Main entry point and API surface
- JitsiConnection - XMPP connection and authentication
- JitsiConference - Conference session management
- JitsiTrack - Media track abstraction (local and remote)
- E2EE Module - End-to-end encryption layer
lib-jitsi-meet is distributed via GitHub releases, not npm. See the Installation guide for details.
Browser Support
lib-jitsi-meet supports all modern browsers with WebRTC capabilities:- Chrome/Chromium 74+
- Firefox 68+
- Safari 14.1+
- Edge 79+ (Chromium-based)
- Mobile browsers (iOS Safari, Chrome Mobile)
Next Steps
Install the Library
Set up lib-jitsi-meet in your project with npm, yarn, or React Native
Build Your First Conference
Follow the quick start guide to create a working video conference