Skip to content

zoujiaqing/livekit-kmp

Repository files navigation

LiveKit KMP

LiveKit Kotlin Multiplatform SDK — unified cross-platform real-time audio/video solution.

Kotlin License

✨ Features

  • Unified Kotlin API: Same code for Android and iOS
  • Reactive: State via Kotlin Flow
  • Coroutines: Suspend functions, non-blocking calls
  • Type-safe: Result-based error handling
  • Easy integration: Works with plain KMP and Compose Multiplatform

📱 Supported platforms

Platform SDK version Status
Android LiveKit Android SDK 2.23.2 ✅ Full support
iOS LiveKitClient 2.0.18 (CocoaPods) ✅ Full support

🚀 Quick start

Android

// Application.onCreate()
LiveKit.initialize(this)

// Usage
val room = LiveKit.createRoom()
room.connect(url, token)

iOS

// iOSApp.swift
@main
struct iOSApp: App {
    init() {
        LiveKitRoomFactory.companion.setBridgeProvider { LiveKitBridgeImpl() }
        LiveKitKt.initialize(context: NSNull())
    }
}
// Same Kotlin code as on Android
val room = LiveKit.createRoom()
room.connect(url, token)

📖 Documentation

  • USAGE.md — Usage guide and API reference

🏗️ Architecture

Android: KMP → LiveKit Android SDK 2.23.2
iOS: KMP → LiveKitRoomBridge → Swift → LiveKitClient 2.0.18

Single Kotlin API; platform differences are hidden.

📄 License

Apache License 2.0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors