A cross-platform, performant image component for React Native and Expo.
Main features
- Designed for speed
- Support for many image formats (including animated ones)
- Disk and memory caching
- Supports BlurHash and ThumbHash - compact representations of a placeholder for an image
- Transitioning between images when the source changes (no more flickering!)
- Implements the CSS
object-fit
andobject-position
properties (seecontentFit
andcontentPosition
props) - Uses performant
SDWebImage
andGlide
under the hood
Supported image formats
Format | Android | iOS | Web |
---|---|---|---|
WebP | ✅ | ✅ | ✅ |
PNG / APNG | ✅ | ✅ | ✅ |
AVIF | ✅ | ✅ | ⏳ ~87% adoption |
HEIC | ✅ | ✅ | ❌ not adopted yet |
JPEG | ✅ | ✅ | ✅ |
GIF | ✅ | ✅ | ✅ |
SVG | ✅ | ✅ | ✅ |
ICO | ✅ | ✅ | ✅ |
ICNS | ❌ | ✅ | ❌ |
API documentation
Installation in managed Expo projects
For managed Expo projects, follow the installation instructions in the API documentation for the latest stable release.
Installation in bare React Native projects
For bare React Native projects, you must ensure that you have installed and configured the expo
package before continuing.
Add the package to your npm dependencies
npx expo install expo-image
Configure for iOS
Run npx pod-install
after installing the npm package.
Configure for Android
No additional setup necessary.
Contributing
Contributions are very welcome! Please refer to guidelines described in the contributing guide.