SDKs
15 SDKs. One API shape.
Every SDK is generated from the same source of truth — Protobuf for control, OpenAPI for REST. Code you write in JavaScript reads identically in Swift, Kotlin, Rust, or PHP.

Same API everywhere
Pick a language. The code is already familiar.
JavaScript
TS
import { Kardolive } from '@kardolive/sdk';
const kl = new Kardolive({ apiKey });
await kl.rooms.create({ mode: 'low-latency' });Swift
iOS / macOS
import Kardolive let kl = Kardolive(apiKey: KEY) let room = try await kl.rooms.create(mode: .lowLatency)
Kotlin
Android
val kl = Kardolive(apiKey)
val room = kl.rooms.create { mode = LowLatency }Java
JVM
Kardolive kl = new Kardolive(apiKey); Room r = kl.rooms().create(LOW_LATENCY);
C# / .NET
.NET / Unity
var kl = new Kardolive(apiKey); var room = await kl.Rooms.CreateAsync(Mode.LowLatency);
C++
native / Unreal
Kardolive kl{apiKey};
auto room = kl.rooms().create(Mode::LowLatency);Python
server
from kardolive import Kardolive kl = Kardolive(api_key=KEY) room = kl.rooms.create(mode='low-latency')
Go
backend
kl := kardolive.New(apiKey) room, _ := kl.Rooms.Create(ctx, kardolive.LowLatency)
Rust
high-perf
let kl = Kardolive::new(api_key); let room = kl.rooms().create(Mode::LowLatency).await?;
Flutter
Dart
final kl = Kardolive(apiKey: KEY); final room = await kl.rooms.create(mode: LowLatency);
React Native
JS
import { Kardolive } from '@kardolive/react-native';
const kl = new Kardolive({ apiKey });Unity
C#
// Drop the prefab in KardoliveSession.Init(apiKey);
Unreal
Blueprint / C++
// Use the Kardolive node KardoliveSubsystem::CreateSession(apiKey);
PHP
WP / Laravel
$kl = new Kardolive($apiKey);
$room = $kl->rooms->create('low-latency');Ruby
Rails
kl = Kardolive.new(api_key: KEY) room = kl.rooms.create(mode: :low_latency)
Codegen
Single Protobuf + OpenAPI spec generates all 15 SDKs. Update once, ship everywhere.
Versioning
SDK SemVer; API URL-versioned. Deprecations announced 6 months out.
Type-safe
Strict types in TS, Swift, Kotlin, C#, Rust. No "any" objects bleeding through.
Drop the SDK in. Ship live by lunch.
Free tier includes 100 viewers + 10 hours / month. Real load — not a sandbox toy.