Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.react-native-community:react-native-video:'
}
dependencies {
implementation("com.github.react-native-community:react-native-video:")
}
<dependency>
<groupId>com.github.react-native-community</groupId>
<artifactId>react-native-video</artifactId>
<version></version>
</dependency>
libraryDependencies += "com.github.react-native-community" % "react-native-video" % ""
:dependencies [[com.github.react-native-community/react-native-video ""]]
The most battle-tested open-source video player component for React Native with support for DRM, offline playback, HLS/DASH streaming, and more.
| Version | State | Architecture | |---------|-------|--------------| | v5 and lower | ❌ End-of-life Commercial Support Available | Old Architecture | | v6 | 🛠 Maintained (community + TWG) | Old + New (Interop Layer) | | v7 | 🚀 Active Development | Old + New (Full Support) |
react-native-video v7 introduces full support for the new React Native architecture, unlocking better performance, improved consistency, and modern native modules.
# Install dependencies
yarn add react-native-video
# Install pods
cd ios && pod install
import Video from 'react-native-video';
export default () => (
<Video
source={{ uri: 'https://www.w3schools.com/html/mov_bbb.mp4' }}
style={{ width: '100%', aspectRatio: 16 / 9 }}
controls
/>
);
If you're building a video-first app and need to download HLS streams for offline playback, you're in the right place.
This SDK supports:
v6 and v7 versions👉 Start Free Trial on the SDK Platform →
If you're building a video-first app and need to upload large video files reliably in the background, you're in the right place.
This SDK supports:
Whether you're building social media apps, content platforms, or enterprise solutions, our Background Upload SDK ensures your users can upload videos seamlessly without interruption.
Contact us to learn more about integrating background video uploads into your React Native application.
👉 Contact us at hi@thewidlarzgroup.com
Write your own plugins to extend library logic, attach analytics or add custom workflows - without forking the core SDK.
→ Plugin documentation
| Offering | Description | |----------|-------------| | Professional Support Packages | Priority bug-fixes, guaranteed SLAs, roadmap influence | | Issue Booster | Fast-track urgent fixes with a pay‑per‑issue model | | Offline Video SDK | Plug‑and‑play secure download solution for iOS & Android | | Background Upload SDK | Reliable background upload solution for iOS & Android | | Integration Support | Hands‑on help integrating video, DRM & offline into your app | | Free DRM Token Generator | Generate Widevine / FairPlay tokens for testing | | Ready Boilerplates | Ready-to-use apps with offline HLS/DASH DRM, video frame scrubbing, TikTok-style video feed, background uploads, Skia-based frame processor (R&D phase), and more | | React Native Video Upgrade Guide | Common upgrade pitfalls & how to solve them |
See how TWG helped Learnn ship a world‑class player in record time - case study.
Contact us at hi@thewidlarzgroup.com
🗽 React Summit US – How TWG helped Learnn boost video performance on React Native.
Watch the talk »
🧨 v7 deep dive – Why we’re building v7 with Nitro Modules Watch on X »
🛠️ Well-maintained open-source library - What does it truly mean? - Bart's talk for React Native Warsaw Watch here »
📺 “Over the Top” Panel - Building Streaming Apps for Mobile, Web, and Smart TVs - Bart giving his insights on the industry Watch here »