react-native-image-picker: Native media selection for React Native
Cross-platform native media picker bridge for React Native.
Learn more about react-native-image-picker
react-native-image-picker is a React Native bridge library that exposes native image and video selection interfaces to JavaScript. It implements platform-specific bindings for iOS and Android, delegating to UIImagePickerController on iOS and the AndroidX Photo Picker on Android. The library supports multiple media types, image resizing, and MIME type filtering with configurable options. Common use cases include building user profile photo uploads, media attachment features in messaging apps, and content creation interfaces.
Native UI integration
Uses platform-native pickers rather than custom implementations, providing UIImagePickerController on iOS and AndroidX Photo Picker on Android. This ensures consistent behavior with system conventions and access to device-specific capabilities.
New Architecture support
Includes explicit support for React Native's new architecture with Fabric and TurboModules, allowing adoption of modern React Native patterns alongside pre-Fabric compatibility.
Flexible API design
Supports both callback and promise-based patterns for media selection, allowing integration with async/await code or traditional callback workflows. Includes options for media type filtering, image resizing, and MIME type restrictions.
import { launchImageLibrary } from 'react-native-image-picker';
const selectProfilePhoto = async () => {
const result = await launchImageLibrary({
mediaType: 'photo',
quality: 0.8
});
if (!result.didCancel && result.assets) {
const photoUri = result.assets[0].uri;
// Upload photoUri to server
}
};Patch release fixing a web platform resource leak when using the camera picker.
- –Call the new stopCamera function on web to release media stream resources after camera use.
- –No breaking changes or new requirements; upgrade to prevent memory leaks in web camera flows.
Adds Android MIME-type filtering; no breaking changes or new requirements.
- –Pass a list of allowed MIME types on Android to restrict file picker selection by format.
- –Release notes do not specify iOS support or configuration details for the new MIME-type option.
Adds HEIF-to-JPEG conversion support; no breaking changes or new requirements.
- –Enable automatic conversion of HEIF images to JPEG format on both iOS and Android platforms.
- –Release notes do not specify configuration steps or opt-in flags for the new conversion feature.
Top in Mobile & Desktop
Related Repositories
Discover similar tools and frameworks used by developers
react-native-vector-icons
Vector icon fonts rendered as native React Native components.
HakuNeko
Cross-platform desktop application for downloading manga chapters from multiple sources with automated organization and offline reading capabilities.
react-native-maps
Cross-platform React Native bridge to native map SDKs.
react-native-video
Native iOS/Android video playback with streaming and DRM.
electron
Framework for building native desktop apps with web technologies.