react-native-vision-camera
📸 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.
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
- Add full-featured photo and video capture to a React Native mobile app with support for 4K resolution and HDR.
- Build a real-time QR code or barcode scanner in a React Native app using the built-in scanning support.
- Run a custom AI model on live camera frames in JavaScript using Frame Processors for facial recognition or object detection.
- Record high-frame-rate video up to 240 FPS in a mobile app backed by GPU-accelerated image processing.