https://github.com/livekit/livekit Skip to content Sign up * Product + Features + Mobile + Actions + Codespaces + Packages + Security + Code review + Issues + Integrations + GitHub Sponsors + Customer stories * Team * Enterprise * Explore + Explore GitHub + Learn and contribute + Topics + Collections + Trending + Learning Lab + Open source guides + Connect with others + The ReadME Project + Events + Community forum + GitHub Education + GitHub Stars program * Marketplace * Pricing + Plans + Compare plans + Contact Sales + Education [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} livekit / livekit Public * Notifications * Fork 188 * Star 3k Scalable, high-performance WebRTC SFU. SDKs in JavaScript, React, React Native, Flutter, Swift, Kotlin, Unity/C#, Go, Ruby and Node. docs.livekit.io License Apache-2.0 license 3k stars 188 forks Star Notifications * Code * Issues 19 * Pull requests 4 * Actions * Security * Insights More * Code * Issues * Pull requests * Actions * Security * Insights This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 16 branches 92 tags Code Latest commit @davidzhao davidzhao Fixed concurrent modification to map (#702) ... 79296d0 May 20, 2022 Fixed concurrent modification to map (#702) Synchronizes access to stats worker maps. Previously it was accessed from both OpsQueue goroutine and run() worker 79296d0 Git stats * 1,001 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .github .idea cmd/server deploy pkg test tools version .gitignore CHANGELOG Dockerfile LICENSE README.md bootstrap.sh config-sample.yaml go.mod go.sum magefile.go magefile_unix.go magefile_windows.go View code [ ] LiveKit - Open source, high performance WebRTC infrastructure Features Documentation & Guides Try it live SDKs & Tools Quickstart Generate config file and keys Starting with docker Test with example app Generating access tokens (JWT) Deploying to server Single node server Kubernetes Testing your deployment Building from source Contributing License README.md LiveKit - Open source, high performance WebRTC infrastructure LiveKit is an open source project that provides scalable, multi-user conferencing over WebRTC. It's designed to give you everything you need to build real time video/audio/data capabilities in your applications. LiveKit is written in Go, using the awesome Pion WebRTC implementation. Features * Scalable, distributed WebRTC SFU (Selective Forwarding Unit) * Modern, full-featured client SDKs * Built for production - JWT authentication and server APIs * Robust networking & connectivity. UDP/TCP/TURN * Easy to deploy - single binary, docker & kubernetes * Advanced features - speaker detection, simulcast, selective subscription, moderation APIs, and webhooks. Documentation & Guides Docs & Guides at: https://docs.livekit.io Try it live Head to our playground and give it a spin. Build a Zoom-like conferencing app in under 100 lines of code! SDKs & Tools Client SDKs: * Javascript (docs) * React * iOS & MacOS - Swift (docs) * Android - Kotlin (docs) * Flutter (docs) * Unity (WebGL) (docs demo) * React Native Server SDKs: * Javascript (docs) * Go (docs) * Ruby * Python (community) Tools: * Egress: export and record your rooms * livekit-cli: command line admin & tools * livekit-load-tester: load testing * Docker image * Helm charts Quickstart Generate config file and keys docker run --rm -v$PWD:/output livekit/generate --local The above command generates a livekit.yaml you can use to start LiveKit. It'll contain an API key/secret pair you can use with your LiveKit install. Starting with docker docker run --rm -p 7880:7880 \ -p 7881:7881 \ -p 7882:7882/udp \ -v $PWD/livekit.yaml:/livekit.yaml \ livekit/livekit-server \ --config /livekit.yaml \ --node-ip When running with docker, --node-ip needs to be set to your machine's IP address. If the service will be exposed to the public Internet, this should the machine's public IP. Test with example app Head over to the example app and enter the generated token to connect to your LiveKit server. This app is built with our React SDK. Once connected, your video and audio are now published to your new LiveKit instance! Generating access tokens (JWT) To add more users to a room, you'll have to create a token for each participant. Learn more about access tokens. livekit-server provides a convenient sub-command to create a development token. This token has an expiration of a month, which is useful for development and testing, but not appropriate for production use. docker run --rm -e LIVEKIT_KEYS=": " \ livekit/livekit-server create-join-token \ --room "" \ --identity "" Deploying to server Deployment Docs: https://docs.livekit.io/guides/deploy Single node server Use our deploy config generator to set up a single node deployment with automatic TLS termination and built-in TURN. It includes a cloud-init/setup script that's supported by most cloud environments. docker run --rm -it -v$PWD:/output livekit/generate Kubernetes We publish a helm chart that helps you to set up a cluster with high availability. For detailed instructions, see Kubernetes guide Testing your deployment Use the connection tester to ensure your installation is set up properly for user traffic. Building from source Pre-requisites: * Go 1.15+ is installed * GOPATH/bin is in your PATH Then run git clone https://github.com/livekit/livekit cd livekit ./bootstrap.sh mage Contributing We welcome your contributions to make LiveKit better! Please join us on Slack to discuss your ideas and/or submit PRs. License LiveKit server is licensed under Apache License v2.0. About Scalable, high-performance WebRTC SFU. SDKs in JavaScript, React, React Native, Flutter, Swift, Kotlin, Unity/C#, Go, Ruby and Node. docs.livekit.io Topics golang video webrtc media-server sfu Resources Readme License Apache-2.0 license Stars 3k stars Watchers 67 watching Forks 188 forks Releases 31 v1.0.0 Latest May 18, 2022 + 30 releases Contributors 22 * * * * * * * * * * * + 11 contributors Languages * Go 99.6% * Other 0.4% * (c) 2022 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.