JSPM

react-map-gl

7.1.8
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 636558
  • Score
    100M100P100Q170159F
  • License MIT

React components for MapLibre GL JS and Mapbox GL JS

Package Exports

  • react-map-gl
  • react-map-gl/dist/es5
  • react-map-gl/dist/es5/components/layer
  • react-map-gl/dist/es5/components/layer.js
  • react-map-gl/dist/es5/exports-maplibre.js
  • react-map-gl/dist/es5/index.js
  • react-map-gl/dist/esm
  • react-map-gl/dist/esm/components/map
  • react-map-gl/dist/esm/components/map.js
  • react-map-gl/dist/esm/exports-maplibre.js
  • react-map-gl/dist/esm/index.js
  • react-map-gl/dist/esm/mapbox/mapbox
  • react-map-gl/dist/esm/mapbox/mapbox.js
  • react-map-gl/maplibre

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-map-gl) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

version build downloads

react-map-gl | Docs

react-map-gl is a suite of React components designed to provide a React API for mapbox-gl or maplibre-gl. More information in the online documentation.

See our Design Philosophy.

Installation

Using react-map-gl requires react >= 16.3.

# Using Maplibre
npm install react-map-gl maplibre-gl

or

# Using Mapbox
npm install react-map-gl mapbox-gl

Example

// Using Maplibre
import * as React from 'react';
import Map from 'react-map-gl/maplibre';

function App() {
  return (
    <Map
      initialViewState={{
        longitude: -122.4,
        latitude: 37.8,
        zoom: 14
      }}
      style={{width: 600, height: 400}}
      mapStyle="https://api.maptiler.com/maps/streets/style.json?key=<Maptiler access token>"
    />
  );
}

or

// Using Mapbox
import * as React from 'react';
import Map from 'react-map-gl';

function App() {
  return (
    <Map
      mapboxAccessToken="<Mapbox access token>"
      initialViewState={{
        longitude: -100,
        latitude: 40,
        zoom: 3.5
      }}
      style={{width: 600, height: 400}}
      mapStyle="mapbox://styles/mapbox/streets-v9"
    />
  );
}

Learn more with in our Getting Started guide.

Using Mapbox Tokens

Starting with v2.0, mapbox-gl requires a Mapbox token for any usage, with or without the Mapbox data service. See about Mapbox tokens for your options.

To show maps from a service such as Mapbox you will need to register on their website in order to retrieve an access token required by the map component, which will be used to identify you and start serving up map tiles. The service will be free until a certain level of traffic is exceeded.

There are several ways to provide a token to your app, as showcased in some of the example folders:

  • Provide a mapboxAccessToken prop to the map component
  • Set the MapboxAccessToken environment variable (or set REACT_APP_MAPBOX_ACCESS_TOKEN if you are using Create React App)
  • Provide it in the URL, e.g ?access_token=TOKEN

Contribute

See contribution guide.

Attributions

react-map-gl is part of vis.gl, an OpenJS Foundation project.

Development is also supported by