gitmyhub

react-native-vision-camera

TypeScript ★ 9.5k updated 1d ago

📸 A powerful, high-performance React Native Camera library.

VisionCamera is a React Native camera library for iOS and Android that supports 4K/8K capture, 240 FPS video, barcode scanning, HDR, and real-time per-frame AI processing via JavaScript Frame Processors.

TypeScriptReact NativeC++SwiftKotlinMetalVulkansetup: moderatecomplexity 3/5

VisionCamera is a camera library for React Native, which is a framework for building mobile apps using JavaScript. It provides access to the device camera on both iOS and Android, exposing a wide range of features that the built-in React Native camera support does not cover. The library is built and maintained by Margelo, a mobile app development studio.

The feature list covers photo and video capture, QR code and barcode scanning, adjustable resolution up to 4K and 8K images, frame rates between 30 and 240 FPS, HDR and night modes, and smooth zooming powered by a separate animation library called Reanimated. One of the more advanced features is Frame Processors, which lets developers write custom JavaScript functions that run on each camera frame in real time. The README lists facial recognition, AI object detection, and real-time video chat as example uses for this capability.

Installation follows the standard React Native package pattern: install from npm, then run pod install in the iOS directory to link the native dependencies. The library includes a C++ and GPU-accelerated image resizer on both Metal for iOS and Vulkan for Android, which is what allows it to handle high-resolution and high-frame-rate work without dropping performance.

The current version is V5. The previous V4 release has been archived in a separate repository and its documentation moved to a separate URL. A real-world app called ShadowLens, available on both the App Store and Google Play, was built using VisionCamera and serves as a public demonstration of what the library can do. Full documentation is at visioncamera.margelo.com.

Where it fits