A community-supported, open-source React Native library for building maps with the Mapbox Maps SDK for iOS and Mapbox Maps SDK for Android
→ Call for additional maintainers discussion thread
At the moment we support Mapbox (v10) and Mapbox (v11) beta. We default to Mapbox (v10).
See iOS & Android setup guide for using v11 beta
- Please Sign Up to Mapbox to get the Mapbox Access Token.
- node
- npm
- React Native (0.70+, older versions from 0.64+ might or might not work)
Check our Installation instructions
For more information, check out our Getting Started section
Before you run your project be sure you have completed the Installation Guides for Android or iOS.
# Run with yarn
yarn run ios
# or Run with NPM
npm run ios
# Run with yarn
yarn run android
# or Run with NPM
npm run android
import React from 'react';
import { StyleSheet, View } from 'react-native';
import Mapbox from '@rnmapbox/maps';
Mapbox.setAccessToken('<YOUR_ACCESSTOKEN>');
const App = () => {
return (
<View style={styles.page}>
<View style={styles.container}>
<Mapbox.MapView style={styles.map} />
</View>
</View>
);
}
export default App;
const styles = StyleSheet.create({
page: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
container: {
height: 300,
width: 300,
},
map: {
flex: 1
}
});
- MapView
- StyleImport
- Light
- StyleSheet
- PointAnnotation
- MarkerView
- Callout
- Camera
- UserLocation
- LocationPuck
- Images
- Image
- Models
- BackgroundLayer
- CircleLayer
- FillExtrusionLayer
- FillLayer
- LineLayer
- RasterLayer
- SymbolLayer
- HeatmapLayer
- SkyLayer
- ModelLayer
This package is not available in the Expo Go app. Learn how you can use it with custom dev clients.
This library provides some mocks which are necessary for running tests.
Example:
"jest": {
"preset": "react-native",
"setupFilesAfterEnv": ["@rnmapbox/maps/setup-jest"],
"transformIgnorePatterns": [
"node_modules/(?!(...|@rnmapbox))"
]
}
Help drive this repo forward - be a sponsor. Add a comment here to discuss your sponsorship.
Terrain Dance |
Have a question or need some help? Use Github discussions or the react-native channel in the mapbox discord.