Skip to main content

September 2026 SDK Release and Migration Notes

These versions are the current package manifests used by this documentation. Pin the version for your platform and test the target runtime independently.

SDKCurrent versionRelease focus
ReactJSmediasfu-reactjs@4.3.2ESM package entry and dual CommonJS/ESM output; includes the 4.3.1 modern headless UI exports
Shared coremediasfu-shared@1.2.0Headless media helpers and framework-neutral state/action refinements
Angularmediasfu-angular@2.3.2Embedded UI support and same-engine modern head renderer
Vuemediasfu-vue@1.1.2Embedded UI support and rendering refinements
React Nativemediasfu-reactnative@2.4.2Package entry metadata and modern headless UI from the 2.4.1 line
Expomediasfu-reactnative-expo@2.5.2Package entry metadata and modern headless UI from the 2.5.1 line
Fluttermediasfu_sdk@2.3.1Headless rendering and embedded-layout refinements
Android/Kotlin1.0.6 source release lineCompose head renderer and current headless/media integration; confirm registry availability for your build

New public surfaces

  • ReactJS, Angular, React Native, Expo, and Kotlin/Compose expose a ModernMediasfuGenericHead-named renderer for reconstructing the normal modern UI from one existing room engine. Angular's exported class is ModernMediasfuGenericHeadComponent.
  • ReactJS exports the modern background and breakout components through its modern Generic barrel, including modal/sidebar/inline presentation where the component type declares it.
  • ReactJS, React Native, and Expo expose measured render hooks on media cards and aspect containers. Angular and Vue retain their own component/template contracts; the React signatures do not become cross-framework APIs.
  • Shared core 1.2.0 adds headless media helpers but still renders no UI.

Behavioral and rendering fixes

  • Embedded room sizing now follows the containing surface more reliably, including control-aware main/sub aspect height calculations.
  • Custom local video must prefer the processed virtual-background stream when one is active. This aligns app-owned tiles with MediaSFU's supplied grid.
  • The same-engine head renderer performs a current-state read and does not create a second socket or media lifecycle.

Packaging fixes

ReactJS 4.3.2 publishes an ESM entry alongside the CommonJS entry. React Native 2.4.2 and Expo 2.5.2 add explicit package export/metadata handling. These are packaging changes; they do not by themselves prove device media behavior.

Migration checklist

  1. Pin the new package version and regenerate the application's lockfile.
  2. Keep only one room engine. If relocating the standard UI, enable its external-render path and mount the matching head renderer with the current parameter publication.
  3. Replace local self-view selection with the processed-stream-first rule.
  4. Re-test bounded/embedded layouts, control bars, cards, pagination, remote audio, virtual-background removal, breakout navigation, leave, and a second join after cleanup.
  5. For ReactJS bundlers, verify both development and production imports after the ESM packaging change. For React Native and Expo, verify the packaged entry in the actual native build.

No source evidence marks these version updates as a blanket breaking API change. Applications that relied on private files, duplicated room engines, raw local-camera precedence, or implicit package-entry behavior must migrate to the documented public contracts.

Continue with choosing a UI approach, virtual backgrounds, breakout rooms, and leave/rejoin cleanup.