Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. React Native
  3. react-native-image-crop-picker

react-native-image-crop-picker

MITObjective-Cv0.51.1

A React Native module for iOS and Android that provides an image picker with camera support, cropping, compression, and video selection.

GitHubGitHub
6.4k stars1.6k forks0 contributors

What is react-native-image-crop-picker?

React Native Image Crop Picker is a native module for React Native applications that provides access to the device's camera and photo library. It simplifies capturing, selecting, and manipulating images and videos directly within mobile apps, offering a native user experience on both iOS and Android. The module supports advanced features like cropping, compression, multiple media selection, and extensive platform-specific customization.

Target Audience

React Native developers building mobile applications that require image or video selection, camera capture, or media editing functionality. It is particularly suited for apps needing a native-looking media picker with cropping and compression capabilities.

Value Proposition

Developers choose this module for its comprehensive feature set that unifies complex media handling tasks across iOS and Android with a single API. Its unique selling point is the deep integration of native platform APIs for cropping, compression, and UI customization, delivering high performance and a familiar user experience without compromising on functionality.

Overview

iOS/Android image picker with support for camera, video, configurable compression, multiple images and cropping

Use Cases

Best For

  • Building React Native apps that require users to select and crop profile pictures or avatars.
  • Implementing a media picker with support for selecting multiple images or videos in a single action.
  • Adding camera capture functionality with configurable compression and image quality settings.
  • Creating apps that need to extract EXIF data or base64 representations from selected images.
  • Developing cross-platform apps requiring a native-looking image cropper with rectangular or circular masks.
  • Handling media selection with platform-specific customizations like smart albums on iOS or toolbar colors on Android.

Not Ideal For

  • Apps requiring advanced video compression on Android, as it's a noted TODO with known issues for cropping with videos.
  • Projects needing identical media handling across iOS and Android without platform-specific workarounds or quirks.
  • Teams using Expo's managed workflow or seeking a pure-JavaScript solution to avoid native module linking.
  • Applications where minimal app size is critical, as native modules add overhead and require manual platform configuration.

Pros & Cons

Pros

Comprehensive Media Handling

Supports camera, gallery, cropping, compression, multiple selection, and EXIF data extraction, as detailed in the README's extensive feature list and configurable options like cropping and compressImageQuality.

Native Platform Integration

Leverages iOS and Android APIs for a familiar UI, with platform-specific customizations such as smart albums on iOS and toolbar color settings on Android, ensuring high performance.

Flexible Configuration Options

Offers numerous settings for image dimensions, quality, and UI tweaks, including cropperCircleOverlay for circular crops and mediaType filtering for photo or video selection.

Base64 and Metadata Support

Includes options for base64 encoding and EXIF data extraction, enabling direct use in apps without additional libraries, as shown in the includeBase64 and includeExif parameters.

Cons

Platform Feature Disparities

Key features like video compression are iOS-only, and Android has known bugs with cropping for videos, plus TODOs for standardization and video compression indicate incomplete parity.

Complex Native Setup

Requires manual configuration of Info.plist permissions on iOS and AndroidManifest.xml, which can be error-prone and adds maintenance overhead compared to simpler JavaScript alternatives.

Android-Specific Limitations

The README admits issues such as videos not displaying with cropping enabled on Android, and options like disableCropperColorSetters hint at underlying complexity or bugs.

Performance Trade-offs

Default behavior writes temporary files, potentially impacting performance if not managed; while optimizations exist (e.g., writeTempFile on iOS), they require careful tuning.

Frequently Asked Questions

Quick Stats

Stars6,351
Forks1,608
Contributors0
Open Issues554
Last commit4 months ago
CreatedSince 2016

Tags

#camera#ios#recording#image-cropping#android#image-picker#crop#react-native#cropping#video-picker#video#photo-library#image#react#mobile

Built With

A
Android
i
iOS
R
React Native

Included in

React Native35.6k
Auto-fetched 1 day ago

Related Projects

react-native-vector-iconsreact-native-vector-icons

Customizable Icons for React Native with support for image source and full styling.

Stars17,865
Forks2,100
Last commit13 days ago
lottie-react-nativelottie-react-native

Lottie wrapper for React Native.

Stars17,153
Forks1,800
Last commit16 days ago
react-native-mapsreact-native-maps

React Native Mapview component for iOS + Android

Stars15,958
Forks4,949
Last commit2 months ago
react-native-gifted-chatreact-native-gifted-chat

💬 The most complete chat UI for React Native

Stars14,415
Forks3,607
Last commit27 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub