A React Native component for displaying full-screen modal images with pinch-to-zoom, double-tap zoom, and swipe-to-dismiss gestures.
react-native-image-modal is a React Native library that provides a full-screen image modal component for iOS and Android applications. It enables users to view images in an immersive modal interface with intuitive gesture controls like pinch-to-zoom and swipe-to-dismiss, enhancing the image viewing experience in mobile apps.
React Native developers building mobile applications that require interactive, full-screen image viewing capabilities, such as in photo galleries, product displays, or media-rich content apps.
Developers choose this library for its straightforward API combined with extensive customization options, including support for custom image components like react-native-fast-image, programmatic control via refs, and gesture callbacks, allowing it to fit diverse app designs without sacrificing simplicity.
the simple image modal for React Native
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements pinch-to-zoom, double-tap toggle, and swipe-to-dismiss gestures, as shown in the demo GIFs, providing an intuitive and immersive image viewing experience.
Allows custom image components via renderImageComponent for libraries like react-native-fast-image, and supports custom headers/footers through renderHeader and renderFooter props, enabling tailored UI integration.
Provides refs for opening and closing the modal programmatically, as detailed in the properties table, allowing dynamic interaction management without relying solely on user gestures.
Includes an isRTL prop for right-to-left layout support, addressing internationalization needs as referenced in issue #35 in the README.
Does not support video or other media types, restricting its use in applications that require multimodal content display, with no mention of such features in the README.
The modalRef prop is deprecated, as noted in the properties table, which may cause confusion or require code updates for developers transitioning from older versions.
Requires manual adjustment for Android animations and translucent status bars via props like renderToHardwareTextureAndroid and isTranslucent, adding setup complexity for cross-platform consistency.