Skip to main content

What is react-native-daily-js?

react-native-daily-js (@daily-co/react-native-daily-js) is Daily’s React Native SDK for building WebRTC-based video and audio calls on iOS and Android. It mirrors the daily-js API, so if you’ve used Daily on the web, the concepts carry over directly.

Installation

Install react-native-daily-js and configure your project

API Reference

Explore the full API surface

Playground demo

A working example app to get started quickly

npm package

README and peer dependency version requirements

Getting started

Install react-native-daily-js along with its peer dependencies:
npm i @daily-co/react-native-daily-js \
  @react-native-async-storage/async-storage@^1.15.7 \
  react-native-background-timer@^2.3.1 \
  react-native-get-random-values@^1.9.0
npm i --save-exact @daily-co/react-native-webrtc@124.0.6-daily.1
See the installation guide for Expo and bare React Native setup steps. Once installed, join a call:
import Daily from '@daily-co/react-native-daily-js';

const call = Daily.createCallObject();
await call.join({ url: 'https://your-domain.daily.co/room-name' });

Key features

Participant management

Track participants, control audio/video, and manage permissions

Recording

Cloud recording with custom layout presets

Live streaming

Stream to any RTMP endpoint

Transcription

Real-time transcription powered by Deepgram

Screen sharing

Share your screen on supported platforms

Network diagnostics

Monitor network quality during calls

Platform requirements

PlatformMinimum version
iOSDeployment target >= 12.0
AndroidminSdkVersion >= 24
Daily Prebuilt (our embeddable video chat UI) is not supported in react-native-daily-js. Use daily-js if you want to embed the Prebuilt UI.
Daily supports versions of react-native-daily-js released in the past six months. Update your Daily libraries regularly to access the latest features.