{"_id":"@bitalikrty/jitsi-meet-react-native-sdk","_rev":"2-7ed0d5b49fd37219ea6418225283526a","name":"@bitalikrty/jitsi-meet-react-native-sdk","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@bitalikrty/jitsi-meet-react-native-sdk","version":"1.0.0","keywords":["react-native"],"author":"","license":"MIT","_id":"@bitalikrty/jitsi-meet-react-native-sdk@1.0.0","maintainers":[{"name":"bitalikrty","email":"bitalikrty@gmail.com"}],"homepage":"https://jitsi.org","bugs":{"url":"https://github.com/bitalikr1999/jitsi-meet-rn-sdk/issues"},"dist":{"shasum":"ffab0848b4a4704681ce9b67c38034eeba8aa177","tarball":"https://registry.npmjs.org/@bitalikrty/jitsi-meet-react-native-sdk/-/jitsi-meet-react-native-sdk-1.0.0.tgz","fileCount":2166,"integrity":"sha512-GBijN6dZgyfruOoXh4Hy1CC3GZ3w3OrKqrjBUA+/lY8+wPrsvEaZwbmXAi3TcCNoZ8VOl88C4HFzrEZp7MuwNA==","signatures":[{"sig":"MEQCIA0Io1KWVGFiOAp035AqNTPLDCrLXvx2MO6xbZbJKH1HAiBIiBwDIW0K6tgODsez3BMFkB0h2J9tYAIp1nz/cE+lbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21479893},"main":"index.tsx","gitHead":"0904dfdcb25fd4df3ef2d93bc1218a0f706dfe16","scripts":{"prepare":"node prepare_sdk.js","postinstall":"node sdk_instructions.js"},"_npmUser":{"name":"bitalikrty","email":"bitalikrty@gmail.com"},"repository":{"url":"git+https://github.com/bitalikr1999/jitsi-meet-rn-sdk.git","type":"git"},"_npmVersion":"10.8.2","description":"React Native SDK for Jitsi Meet.","directories":{},"_nodeVersion":"20.15.1","dependencies":{"util":"0.0.0","uuid":"0.0.0","redux":"0.0.0","unorm":"0.0.0","js-md5":"0.0.0","moment":"0.0.0","zxcvbn":"0.0.0","i18next":"0.0.0","punycode":"0.0.0","base64-js":"0.0.0","js-sha512":"0.0.0","lodash-es":"0.0.0","jwt-decode":"0.0.0","react-redux":"0.0.0","redux-thunk":"0.0.0","@jitsi/logger":"0.0.0","react-i18next":"0.0.0","react-linkify":"0.0.0","text-encoding":"0.0.0","@stomp/stompjs":"0.0.0","@xmldom/xmldom":"0.0.0","lib-jitsi-meet":"0.0.0","@jitsi/js-utils":"0.0.0","@jitsi/rtcstats":"0.0.0","optional-require":"0.0.0","grapheme-splitter":"0.0.0","i18n-iso-countries":"0.0.0","promise.allsettled":"0.0.0","react-emoji-render":"0.0.0","react-native-paper":"0.0.0","react-native-dialog":"0.0.0","i18next-http-backend":"0.0.0","promise.withresolvers":"0.0.0","react-native-tab-view":"0.0.0","moment-duration-format":"0.0.0","@braintree/sanitize-url":"0.0.0","@react-navigation/stack":"0.0.0","@react-navigation/native":"0.0.0","react-native-url-polyfill":"0.0.0","@react-navigation/elements":"0.0.0","react-native-youtube-iframe":"0.0.0","react-native-svg-transformer":"0.0.0","@react-navigation/bottom-tabs":"0.0.0","@react-navigation/material-top-tabs":"0.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"react":"*","react-native":"*","react-native-svg":"0.0.0","react-native-sound":"0.0.0","react-native-video":"0.0.0","react-native-webrtc":"0.0.0","react-native-screens":"0.0.0","react-native-webview":"0.0.0","@amplitude/react-native":"0.0.0","@giphy/react-native-sdk":"0.0.0","react-native-keep-awake":"0.0.0","react-native-pager-view":"0.0.0","react-native-device-info":"0.0.0","react-native-performance":"0.0.0","react-native-splash-screen":"0.0.0","react-native-immersive-mode":"0.0.0","react-native-calendar-events":"0.0.0","react-native-gesture-handler":"0.0.0","react-native-background-timer":"0.0.0","@react-native-community/slider":"0.0.0","react-native-get-random-values":"0.0.0","react-native-safe-area-context":"0.0.0","@react-native-community/netinfo":"0.0.0","react-native-default-preference":"0.0.0","react-native-orientation-locker":"0.0.0","react-native-watch-connectivity":"0.0.0","@react-native-clipboard/clipboard":"0.0.0","@react-native-async-storage/async-storage":"0.0.0","@react-native-google-signin/google-signin":"0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jitsi-meet-react-native-sdk_1.0.0_1745348933575_0.7289173085286911","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bitalikrty/jitsi-meet-react-native-sdk","version":"1.0.1","description":"React Native SDK for Jitsi Meet.","main":"index.tsx","license":"MIT","author":"","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/bitalikr1999/jitsi-meet-rn-sdk.git"},"dependencies":{"@braintree/sanitize-url":"0.0.0","@jitsi/js-utils":"0.0.0","@jitsi/logger":"0.0.0","@jitsi/rtcstats":"0.0.0","@react-navigation/bottom-tabs":"0.0.0","@react-navigation/elements":"0.0.0","@react-navigation/material-top-tabs":"0.0.0","@react-navigation/native":"0.0.0","@react-navigation/stack":"0.0.0","@stomp/stompjs":"0.0.0","@xmldom/xmldom":"0.0.0","base64-js":"0.0.0","grapheme-splitter":"0.0.0","i18n-iso-countries":"0.0.0","i18next":"0.0.0","js-md5":"0.0.0","i18next-http-backend":"0.0.0","js-sha512":"0.0.0","jwt-decode":"0.0.0","lib-jitsi-meet":"0.0.0","lodash-es":"0.0.0","moment":"0.0.0","moment-duration-format":"0.0.0","optional-require":"0.0.0","promise.allsettled":"0.0.0","promise.withresolvers":"0.0.0","punycode":"0.0.0","react-emoji-render":"0.0.0","react-i18next":"0.0.0","react-linkify":"0.0.0","react-native-dialog":"0.0.0","react-native-paper":"0.0.0","react-native-svg-transformer":"0.0.0","react-native-tab-view":"0.0.0","react-native-url-polyfill":"0.0.0","react-native-youtube-iframe":"0.0.0","react-redux":"0.0.0","redux":"0.0.0","redux-thunk":"0.0.0","text-encoding":"0.0.0","unorm":"0.0.0","util":"0.0.0","uuid":"0.0.0","zxcvbn":"0.0.0"},"peerDependencies":{"@amplitude/react-native":"0.0.0","@giphy/react-native-sdk":"0.0.0","@react-native-async-storage/async-storage":"0.0.0","@react-native-clipboard/clipboard":"0.0.0","@react-native-community/netinfo":"0.0.0","@react-native-community/slider":"0.0.0","@react-native-google-signin/google-signin":"0.0.0","react-native":"*","react":"*","react-native-background-timer":"0.0.0","react-native-calendar-events":"0.0.0","react-native-default-preference":"0.0.0","react-native-device-info":"0.0.0","react-native-get-random-values":"0.0.0","react-native-gesture-handler":"0.0.0","react-native-immersive-mode":"0.0.0","react-native-keep-awake":"0.0.0","react-native-pager-view":"0.0.0","react-native-performance":"0.0.0","react-native-orientation-locker":"0.0.0","react-native-safe-area-context":"0.0.0","react-native-screens":"0.0.0","react-native-sound":"0.0.0","react-native-splash-screen":"0.0.0","react-native-svg":"0.0.0","react-native-video":"0.0.0","react-native-watch-connectivity":"0.0.0","react-native-webrtc":"0.0.0","react-native-webview":"0.0.0"},"scripts":{"postinstall":"node sdk_instructions.js","prepare":"node prepare_sdk.js"},"keywords":["react-native"],"_id":"@bitalikrty/jitsi-meet-react-native-sdk@1.0.1","gitHead":"0904dfdcb25fd4df3ef2d93bc1218a0f706dfe16","bugs":{"url":"https://github.com/bitalikr1999/jitsi-meet-rn-sdk/issues"},"homepage":"https://github.com/bitalikr1999/jitsi-meet-rn-sdk#readme","_nodeVersion":"20.15.1","_npmVersion":"10.8.2","dist":{"integrity":"sha512-5LlbYjXakLSvft/mmSS7npQZuqvlEV+233eA41CTvYnOSy1pFpPscb55TMb3e88gzP+mQ7sXCO0k2x08ZdZ1WQ==","shasum":"9fb7e3e355a0314b23ba0072143eaf39696a8322","tarball":"https://registry.npmjs.org/@bitalikrty/jitsi-meet-react-native-sdk/-/jitsi-meet-react-native-sdk-1.0.1.tgz","fileCount":2166,"unpackedSize":21481338,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHmZs5UML9PekZD8UUTCVjnqMS9+Wn0Sc5HySzi1129hAiEAoICY/Ep1JyY8OpWzhozSPbES9otpZlaxqtYZX0y7Akc="}]},"_npmUser":{"name":"bitalikrty","email":"bitalikrty@gmail.com"},"directories":{},"maintainers":[{"name":"bitalikrty","email":"bitalikrty@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/jitsi-meet-react-native-sdk_1.0.1_1745351301247_0.9132854110604021"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-22T19:08:53.501Z","modified":"2025-04-22T19:48:21.752Z","1.0.0":"2025-04-22T19:08:54.049Z","1.0.1":"2025-04-22T19:48:21.582Z"},"bugs":{"url":"https://github.com/bitalikr1999/jitsi-meet-rn-sdk/issues"},"license":"MIT","homepage":"https://github.com/bitalikr1999/jitsi-meet-rn-sdk#readme","keywords":["react-native"],"repository":{"type":"git","url":"git+https://github.com/bitalikr1999/jitsi-meet-rn-sdk.git"},"description":"React Native SDK for Jitsi Meet.","maintainers":[{"name":"bitalikrty","email":"bitalikrty@gmail.com"}],"readme":"# <p align=\"center\">Jitsi Meet React Native SDK</p>\n\n\n## Installation\nInside your project, run;\n```console\nnpm i @jitsi/react-native-sdk\n```\nIf there are conflicts, you can use ```--force```\n<br/>Additionally, if not already installed, some dependencies will need to be added.\n\nThis can be done by running the following script:\n```console\nnode node_modules/@jitsi/react-native-sdk/update_dependencies.js\n```\nThis will check and update all your dependencies.<br/><br/>\nAfter that you need to ```npm i```, if some dependency versions were updated.\n\n [comment]: # (These deps definitely need to be added manually, more could be neccesary)\n\nBecause of SVG use in react native, you need to update metro.config your project's file:\n\n```javascript\nconst { getDefaultConfig } = require('metro-config');\n\nmodule.exports = (async () => {\n  const {\n    resolver: {\n      sourceExts,\n      assetExts\n    }\n  } = await getDefaultConfig();\n\n  return {\n    transformer: {\n      babelTransformerPath: require.resolve('react-native-svg-transformer'),\n      getTransformOptions: async () => ({\n        transform: {\n          experimentalImportSupport: false,\n          inlineRequires: true,\n        },\n      }),\n    },\n    resolver: {\n      assetExts: assetExts.filter(ext => ext !== 'svg'),\n      sourceExts: [...sourceExts, 'svg']\n    }\n  }\n})();\n```\n\n## iOS\n\n#### Project Info.plist\n- Add a *Privacy - Camera Usage Description*\n- Add a *Privacy - Microphone Usage Description*\n\n#### General\n- Signing & capabilites:\n    - Add Background modes\n        - Audio\n        - Voice over IP\n        - Background fetch\n\nRun;\n```console\ncd ios && pod install && cd ..\n```\n\n## Android\n\n- In your build.gradle have at least `minSdkVersion = 26`\n- In `android/app/src/debug/AndroidManifest.xml` and `android/app/src/main/AndroidManifest.xml`, under the `</application>` tag, include\n  ```xml\n    <uses-permission android:name=\"android.permission.RECORD_AUDIO\" />\n    <uses-permission android:name=\"android.permission.CAMERA\" />\n  ```\n  ### Services\n    #### Screen share\n\n- Go to your `MainApplication.java` file and add:\n    1. `import com.oney.WebRTCModule.WebRTCModuleOptions;` that comes from `react-native-webrtc` dependency.\n\n    2. `WebRTCModuleOptions options = WebRTCModuleOptions.getInstance();` instance it.\n    3. `options.enableMediaProjectionService = true;` enable foreground service that takes care of screen-sharing feature.\n\n- Go to your `android/app/src/main/AndroidManifest.xml`, under the `</application>` tag and include\n    ```xml\n   <uses-permission android:name=\"android.permission.FOREGROUND_SERVICE\" />\n   <uses-permission android:name=\"android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION\" />\n    ```\n\nIf you want to test all the steps before applying them to your app, you can check our React Native SDK sample app here:\nhttps://github.com/jitsi/jitsi-meet-sdk-samples/tree/master/react-native\n\n\n## Using JWT tokens\n- If you are planning to use tokens or another domain, you can do that by updating the following props, as shown below.\n- For example:\n```javascript\n  <JitsiMeeting\n    room = { 'ThisIsNotATestRoomName' }\n    serverURL = { 'https://meet.jit.si/' }\n    token={ 'dkhalhfajhflahlfaahalhfahfsl' } />\n```\n\n## Using custom overflow menu buttons\n- If you are planning to add custom overflow menu buttons, you can do that by updating the ```config``` prop, as shown below.\n- For example:\n```javascript\n  <JitsiMeeting\n    config = {{\n        customToolbarButtons: [\n            {\n                icon: \"https://w7.pngwing.com/pngs/987/537/png-transparent-download-downloading-save-basic-user-interface-icon-thumbnail.png\",\n                id: \"btn1\",\n                text: \"Button one\"\n            }, {\n                icon: \"https://w7.pngwing.com/pngs/987/537/png-transparent-download-downloading-save-basic-user-interface-icon-thumbnail.png\",\n                id: \"btn2\",\n                text: \"Button two\"\n            }\n        ]\n    }}\n    room = { 'ThisIsNotATestRoomName' }\n    serverURL = { 'https://meet.jit.si/' }\n    token = { 'dkhalhfajhflahlfaahalhfahfsl' } />\n```\n\nFor more details on how you can use React Native SDK with React Native app, you can follow this link:\nhttps://jitsi.github.io/handbook/docs/dev-guide/dev-guide-react-native-sdk\n","readmeFilename":"README.md"}