Skip to main content

LiveKit SDKs Overview

A guide to LiveKit's client and server SDKs for building realtime applications.

Overview

LiveKit provides a comprehensive ecosystem of SDKs for building realtime applications, including realtime SDKs for building user-facing applications, and server-side SDKs for backend operations and media processing. The SDKs are designed to work together, and support multiple platforms and languages.

Realtime SDKs

Realtime SDKs let you build applications that connect to LiveKit rooms and participate in realtime communication. These SDKs handle WebRTC connections, media capture, and room management.

Web and mobile platforms

These are the primary client platforms used for building realtime applications. Each SDK is optimized for its target platform and provides native integration capabilities.

Additional client platforms

LiveKit also supports specialized platforms and use cases beyond the main web and mobile platforms:

  • Rust SDK: For systems programming and embedded applications.
  • Unity WebGL: For web-based Unity applications.
  • ESP32: For IoT and embedded devices.

Server-side SDKs

Server-side SDKs provide backend integration capabilities, enabling you to create programmatic participants, manage rooms, and process media streams. They can also generate access tokens, call server APIs, and receive webhooks.

The Go SDK additionally offers client capabilities, allowing you to build automations that act like end users.

Core server SDKs

Community SDKs

  • PHP: Community-maintained SDK for PHP applications.
  • .NET: Community-maintained SDK for .NET applications.

UI Components

LiveKit provides pre-built UI components to accelerate development:

Agents Framework

LiveKit provides the Agents Framework for building AI agents and programmatic participants:

Telephony Integration

LiveKit's SIP integration enables your applications to connect with traditional phone systems and telephony infrastructure. Server-side SDKs include SIP capabilities for building telephony applications. To learn more, see SIP.

Key features across SDKs

LiveKit SDKs provide a consistent set of features across all platforms, ensuring that your applications work reliably regardless of the target platform. These core capabilities are designed to handle the complexities of realtime communication while providing a simple, unified API.

Realtime capabilities

Realtime SDKs focus on connecting users to LiveKit rooms and managing realtime communication. These capabilities enable applications to capture, transmit, and receive media streams with minimal latency.

  • Media capture: Camera, microphone, and screen sharing.
  • Room management: Join, leave, and manage room participants.
  • Track handling: Subscribe to and publish audio and video tracks.
  • Data channels: Realtime messaging between participants.
  • Connection management: Automatic reconnection and quality adaptation.

Server-side capabilities

Server-side SDKs provide the infrastructure and control needed to manage LiveKit rooms and participants. These capabilities enable backend applications to orchestrate realtime sessions and process media streams.

  • Room control: Create, manage, and monitor rooms.
  • Participant management: Control participant permissions and behavior.
  • Media processing: Subscribe to and process media streams.
  • Webhook handling: Respond to room and participant events.
  • Recording: Capture and store room sessions.

Cross-platform consistency

All SDKs provide consistent APIs and features across platforms:

  • Unified room model: Same room concepts across all platforms.
  • Consistent track handling: Standardized audio and video track management.
  • Shared data APIs: Common data channel and messaging patterns.
  • Quality adaptation: Automatic quality adjustment based on network conditions.

Getting started

To get started with LiveKit SDKs:

  1. Choose your platform: Select the appropriate client and server SDKs for your use case.
  2. Set up LiveKit: Deploy LiveKit server or use LiveKit Cloud.
  3. Build your app: Use the SDKs to create your realtime application.
  4. Add UI components: Integrate pre-built components for faster development.
  5. Deploy and scale: Use LiveKit's production-ready infrastructure.

To get started with LiveKit Agents, see the Voice AI quickstart.