Skip to main content

SDK Guides

Choose an SDK by the application you already have and how much of the visible experience you want MediaSFU to provide. Each guide begins with a compact adoption snapshot, a working starter, and clear routes into customization or engine-level use.

If you are starting fresh, choose your framework below and begin with its Quick start section.

Need signatures, types, or generated API details? Start at /api-reference.

Want the fastest platform-wide answer to "what can I build?" Open /usage/capability-map.

If you do not want to get lost

  1. Choose your SDK.
  2. Choose your backend mode: MediaSFU Cloud or self-hosted MediaSFU Open.
  3. Choose your room shape: general meeting, conference, webinar, broadcast, or chat-first.
  4. Choose how much UI you want to keep: prebuilt, customized, or app-owned.

That order is the fastest path to a working room without mixing transport problems, framework setup, and UI customization into one debugging step.

Choose your SDK

Which one should I choose?

  • Pick mediasfu-shared when building your own framework wrapper or extending shared core behavior.
  • Pick ReactJS for browser apps with direct component/state control.
  • Pick Angular for DI-based integration and Angular-native app structure.
  • Pick React Native for bare RN projects.
  • Pick React Native Expo for Expo-managed workflows.
  • Pick Vue for composition-friendly Vue applications.
  • Pick Flutter for Dart/Flutter apps that need one codebase across mobile, web, and desktop.
  • Pick Kotlin for native Android or Kotlin Multiplatform Compose surfaces.
  • Pick Swift for native Apple apps that present the hosted MediaSFU room from UIKit or SwiftUI.
  • Pick Unity for games, simulations, and 3D products where the scene owns the entire interface.

At a glance

SDKInstallBest for
mediasfu-sharednpm i mediasfu-shared socket.io-client mediasoup-clientShared core logic across frameworks
MediaSFU ReactJSnpm i mediasfu-reactjsWeb apps with full React control
MediaSFU Angularnpm i mediasfu-angularAngular apps with DI-based wrappers
MediaSFU React Nativenpm i mediasfu-reactnativeBare React Native mobile apps
MediaSFU React Native Exponpm i mediasfu-reactnative-expoExpo-managed mobile apps
MediaSFU Vuenpm i mediasfu-vueVue apps with composition-friendly APIs
MediaSFU Flutterflutter pub add mediasfu_sdkCross-platform Flutter apps across Android, iOS, web, desktop, and embedded surfaces
MediaSFU Kotlinimplementation("com.mediasfu:mediasfu-sdk-android:1.0.1")Native Kotlin and Kotlin Multiplatform apps with Compose-first room surfaces
MediaSFU SwiftSwift Package ManagerNative Apple apps with a hosted room controller and Swift bridge controls
MediaSFU UnityUnity Package ManagerScene-owned real-time media in games, simulations, and interactive 3D apps

Capability at a glance

SDK familyPrebuilt roomTargeted overridesApp-owned UIEngine-level path
ReactJS, Angular, React Native, Expo, VueYesYesYesLive parameters/helpers
FlutterYesYesYesMediasfuParameters and direct helpers
KotlinYes, ComposeComponent replacementYesParameters/actions in your Compose shell
SwiftHosted room controllerApp-owned setup and bridge controlsApp shell around hosted roomNative mediasoup/WebRTC bridge
UnityScene-ownedScene-ownedYes, by designClient orchestration plus attached media backend
mediasfu-sharedNoNot applicableRequiredFramework-neutral core primitives

The detailed support boundaries and recommended paths are in /usage/capability-map.

Choose your backend mode

ModeBest forRead next
MediaSFU CloudManaged infrastructure and the fastest route to a secure working room/usage/secure-backend-proxy
MediaSFU Open / self-hostedPrivate infrastructure, local control, and custom deployment ownership/usage/secure-backend-proxy and /sdks

Choose your room shape

Room shapeBest for
General meetingTeam calls, product defaults, and the broadest starter path
ConferenceMulti-speaker sessions, workshops, classes, and collaborative rooms
WebinarHost-led events, audience participation, and stage-centric presentations
BroadcastLivestream-style creator flows, host dashboards, and invite/share-heavy sessions
Chat-firstSupport rooms, low-bandwidth collaboration, and messaging-led workflows

Use the Angular gallery at /sdks/angular when you want concrete visual examples of how several of these room shapes look in a real SDK surface.

Choose your UI ownership path

If you want...Start with
The fastest path with MediaSFU still rendering the visible room experience/usage/quickstart
The default room with targeted branding or surface changes/usage/ui-overrides
A larger custom workspace with MediaSFU still owning room runtime behavior/usage/custom-component
A fully app-owned shell driven by MediaSFU helpers/usage/headless and /usage/choose-ui-mode

What these guides include

  • Framework-specific setup paths for web, mobile, native Apple, Unity, Flutter, Kotlin, and shared-core integrations.
  • Install commands, first-room guidance, and links into the generated API reference for signatures and types.
  • Pointers to package READMEs when a framework has deeper examples than the portal page can reasonably hold.