
react-native-maps
A React Native map component for iOS and Android, with markers, shapes, and tile overlays.
- Stars
- 16k
- Forks
- 5k
- Licence
- MIT
- Language
- TypeScript
- Last update
- 18 days ago
- Type
- Library
What it is
react-native-maps is a library that lets developers show interactive maps inside React Native apps for iOS and Android. Map features like markers, polygons, and tile overlays are added as child components of the MapView, following React's declarative style. It is useful for apps that need a map view without writing separate native code for each platform.
- Show a map centered on a location with an initial region
- Render a list of markers with titles and descriptions
- Make a marker draggable and read its new coordinate on drag end
- Overlay a custom tile layer from a tile server such as OpenStreetMap
- Style a Google Maps view using a Google Map ID
Great for
- React Native developers adding a map screen to an iOS or Android app
- Teams that want map features declared as normal React components
- Apps that need custom marker images or custom marker views
- Projects that need offline or custom tile layers from a tile server or local tiles
Not ideal for
- Developers building only for the web, since this targets iOS and Android React Native apps
- Projects on very old React Native versions, because the README lists minimum version requirements per release
- Teams that need guaranteed performance for many animated custom marker views, since the README warns custom views have performance costs
How to get it
- 1
Install with a package manager
You'll need: Node.js · React Native (version must match the compatibility table in the README)
Installation details
See docs/installation.md in the repository - 2
Run it
- Follow the installation guide in docs/installation.md
- Import MapView from 'react-native-maps' in a screen component
- Pass an initialRegion with latitude, longitude, latitudeDelta, and longitudeDelta
- Add Marker children to the MapView to place points on the map
- 3
Get the most out of it
- Use the Google provider with a googleMapId to apply a styled map from Google Cloud
- Use UrlTile for a custom tile server, and check the README's iOS App Transport Security note
- Use LocalTile with mapType set to none on Android for fully offline tile display
- Control the map with refs and component methods to animate to positions
- Check the Component API docs for MapView, Marker, Callout, Polygon, Polyline, Circle, Heatmap, and Geojson
Downloads
Strengths
- Map features are written as React children, which fits the usual React pattern
- Documented examples cover markers, callouts, tile overlays, and region control
- Open source under the MIT license with a large community (about 16,000 stars)
Trade-offs
- The README says the project is maintained by a small group, so response times may vary
- Custom marker views have performance implications and the README recommends custom images when possible
- Android local tiles still load underlying map tiles unless mapType is set to none, which takes extra setup
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| react-native-maps (this) | 16k | Library | intermediate | 18 days ago | React Native developers adding a map screen to an iOS or Android app |
| react-native-elements | 25.9k | Library | intermediate | 6 months ago | React Native developers who want ready-made UI components |
| react-native-web | 22.2k | Library | intermediate | 4 days ago | Developers who already use React Native and want the same components on the web |
| NativeBase | 20.4k | Library | intermediate | 9 months ago | Teams maintaining an existing app already built on NativeBase |
| react-native-paper | 14.5k | Library | intermediate | 4 days ago | React Native developers who want ready-made Material Design components |
| react-native-gifted-chat | 14.4k | Library | intermediate | 19 days ago | Developers building a chat or messaging screen in a React Native app |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.