VisionCamera is a powerful, high-performance Camera library for React Native. It features:
- ๐ธ Photo and Video capture
- ๐๏ธ QR/Barcode scanner
- ๐ฑ Customizable devices and multi-cameras ("fish-eye" zoom)
- ๐๏ธ Customizable resolutions and aspect-ratios (4k/8k images)
- โฑ๏ธ Customizable FPS (30..240 FPS)
- ๐งฉ Frame Processors (JS worklets to run facial recognition, AI object detection, realtime video chats, ...)
- ๐ Smooth zooming (Reanimated)
- โฏ๏ธ Fast pause and resume
- ๐ HDR & Night modes
- โก Custom C++/GPU accelerated video pipeline (OpenGL)
Install VisionCamera from npm:
npm i react-native-vision-camera
cd ios && pod install
..and get started by setting up permissions!
To see VisionCamera in action, check out ShadowLens!
function App() {
const device = useCameraDevice('back')
if (device == null) return <NoCameraErrorView />
return (
<Camera
style={StyleSheet.absoluteFill}
device={device}
isActive={true}
/>
)
}
See the example app
VisionCamera is provided as is, I work on it in my free time.
If you're integrating VisionCamera in a production app, consider funding this project and contact me to receive premium enterprise support, help with issues, prioritize bugfixes, request features, help at integrating VisionCamera and/or Frame Processors, and more.
- ๐ฆ Follow me on Twitter for updates
- ๐ Check out my blog for examples and experiments
- ๐ฌ Join the Margelo Community Discord for chatting about VisionCamera
- ๐ Sponsor me on GitHub to support my work
- ๐ช Buy me a Ko-Fi to support my work