react-native-image-crop-picker
iOS/Android image picker with support for camera, video, configurable compression, multiple images and cropping
React Native Image Crop Picker
This is a tool that lets you add a photo and video picker to mobile apps built with React Native. When you want users to upload an image or video from their phone, this library handles opening their camera roll or camera, letting them select one or multiple items, and optionally crop or resize the result before your app gets it.
Think of it like the "Choose Photo" button you see in social media apps—except this library does all the heavy lifting. Users can browse their photo library, take a new photo or video with the camera, crop images to a specific size or shape (including circular crops for profile pictures), and compress images to reduce file size. When they're done, your app receives the file path, image dimensions, file size, and other details you might need.
The library works on both iOS and Android, though some features are platform-specific. For instance, on iOS you can control which photo albums appear and force conversion to JPG, while Android lets you customize the colors of the cropping interface. You can also get image data as base64-encoded strings if you'd rather not work with files directly, and optionally extract camera metadata (EXIF data) from photos.
To use it, you install the package, add a few lines to your app's configuration files (mostly permissions and SDK version settings), then call simple functions like ImagePicker.openPicker() or ImagePicker.openCamera() with whatever options you want. The library creates temporary files during processing and cleans them up, though you can manually trigger cleanup if needed.
This is built for React Native developers who want a native-feeling image picker without reinventing the wheel—it wraps platform-specific code for iOS and Android so you only write JavaScript.