Socket
Book a DemoInstallSign in
Socket

@daily-co/config-plugin-rn-daily-js

Package Overview
Dependencies
Maintainers
15
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@daily-co/config-plugin-rn-daily-js

Config plugin to setup react-native-daily-js on prebuild

0.0.9
latest
npmnpm
Version published
Weekly downloads
454
-41.79%
Maintainers
15
Weekly downloads
 
Created
Source

@daily-co/config-plugin-rn-daily-js

Expo is an open-source framework for apps that run natively on Android, iOS, and the web.

This project cannot be used with an Expo Go app because it requires custom native code. Follow the steps in the article on how to make your own development build or prebuild your native projects.

This plugin will automatically configure your native code when it's generated (e.g. with npx expo prebuild) so that it can be used with react-native-daily-js.

Versioning

Ensure you use versions that work together!

expo@daily-co/react-native-webrtc@config-plugins/react-native-webrtc@daily-co/react-native-daily-js@daily-co/config-plugin-rn-daily-js
53.x118.0.3-daily.2-0.76.00.0.9
52.x118.0.3-daily.210.0.00.76.00.0.8
52.x118.0.3-daily.210.0.00.70.00.0.7
51.x118.0.3-daily.29.0.00.64.00.0.6
50.x118.0.3-daily.28.0.00.59.00.0.5
49.x111.0.0-daily.27.0.00.49.00.0.3
48.x111.0.0-daily.16.0.00.43.00.0.2
47.x1.94.1-daily.85.0.00.36.00.0.1

IMPORTANT: Starting with version 0.0.9, you no longer need to install @config-plugins/react-native-webrtc. You only need to install @daily-co/config-plugin-rn-daily-js.

Expo installation

Tested against Expo SDK 47 This package cannot be used in the "Expo Go" app because it requires custom native code.

Install react-native-daily-js dependencies

Install the react-native-daily-js dependencies as mentioned here.

npm i @daily-co/react-native-daily-js @react-native-async-storage/async-storage@^1.15.7 react-native-background-timer@^2.3.1 expo-random@^13.6.0 react-native-get-random-values@^1.10.0
npm i --save-exact @daily-co/react-native-webrtc@118.0.3-daily.1

Install Expo config plugins

npm i @config-plugins/react-native-webrtc @daily-co/config-plugin-rn-daily-js

After installing these packages, add the config plugin to the plugins array of your app.json or app.config.js.

  • For iOS you also need to add the voip background permission.
{
  "expo": {
    "ios": {
      "infoPlist": {
        "UIBackgroundModes": [
          "voip"
        ]
      }
    },
    "plugins": [
      [
        "@daily-co/config-plugin-rn-daily-js",
        {
          "enableCamera": true,
          "enableMicrophone": true,
          "enableScreenShare": true
        }
      ],
      [
        "expo-build-properties",
        {
          "android": {
            "minSdkVersion": 24
          },
          "ios": {
            "deploymentTarget": "13.0"
          }
        }
      ]
    ]
  }
}

Screen Sharing Support

Starting with version 0.0.8, the @daily-co/config-plugin-rn-daily-js plugin now supports screen sharing on iOS via the ScreenCaptureExtension.

How to Enable

To enable screen sharing, add the plugin to your app.json with the enableScreenShare property set to true:

[
  "@daily-co/config-plugin-rn-daily-js",
  {
    "enableScreenShare": true
  }
]

If enableScreenShare is not set or is false, the plugin will not attempt to create the ScreenCaptureExtension.

The App Group ID used for screen sharing will follow this format:

  • group.<your_app_bundle_identifier>

It only works with v0.0.8 or above.

Expo build

After installing all the dependencies, rebuild your app as described in the "Adding custom native code" guide.

Extra customization

The @config-plugins/react-native-webrtc provides props for extra customization, for instance, to define the camera and microphone permissions prompt messages. See the plugin API to learn more.

Troubleshooting

Super expression must either be null or a function

  • This issue may happen when using Expo 50 and @daily-co/react-native-webrtc 118.
  • event-target-shim version must match the same one requested by @daily-co/react-native-webrtc: "event-target-shim": "6.0.2".
  • You can check inside package-lock.json to be sure you are using the right version.
  • If your version of event-target-shim doesn't match the one requested by @daily-co/react-native-webrtc, you can try to update running the following: npm update event-target-shim

Keywords

react-native

FAQs

Package last updated on 02 Jun 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.