Code Monkey home page Code Monkey logo

leaflet-providers's Introduction

Leaflet-providers

An extension to Leaflet that contains configurations for various free1 tile providers.

Installation

Download leaflet-providers.js and include it in your page after including Leaflet, e.g.:

<head>
  ...
  <script src="http://unpkg.com/leaflet@latest/dist/leaflet.js"></script>
  <script src="js/leaflet-providers.js"></script>
</head>

Usage

Leaflet-providers providers are referred to with a provider[.<variant>]-string. Let's say you want to add the nice Watercolor style from Stamen to your map, you pass Stamen.Watercolor to the L.tileLayer.provider-constructor, which will return a L.TileLayer instance for Stamens Watercolor tile layer.

// add Stamen Watercolor to map.
L.tileLayer.provider('Stamen.Watercolor').addTo(map);

Providers

Leaflet-providers provides tile layers from different providers, including OpenStreetMap, Stamen, Esri and OpenWeatherMap. The full listing of free to use layers can be previewed. The page will show you the name to use with leaflet-providers.js and the code to use it without dependencies.

Providers requiring registration

In addition to the providers you are free1 to use, we support some layers which require registration.

HERE and HEREv3 (formerly Nokia).

In order to use HEREv3 layers, you must register. Once registered, you can create an apiKey which you have to pass to L.tileLayer.provider in the options:

L.tileLayer.provider('HEREv3.terrainDay', {
    apiKey: '<insert apiKey here>'
}).addTo(map);

You can still pass app_id and app_code in legacy projects:

L.tileLayer.provider('HERE.terrainDay', {
    app_id: '<insert ID here>',
    app_code: '<insert ID here>'
}).addTo(map);

Jawg Maps

In order to use Jawg Maps, you must register. Once registered, your access token will be located here and you will access to all Jawg default maps (variants) and your own customized maps :

L.tileLayer.provider('Jawg.Streets', {
    variant: '<insert map id here or blank for default variant>',
    accessToken: '<insert access token here>'
}).addTo(map);

Mapbox

In order to use Mapbox maps, you must register. You can get map_ID (e.g. "mapbox/satellite-v9") and ACCESS_TOKEN from Mapbox projects:

L.tileLayer.provider('MapBox', {
    id: '<insert map_ID here>',
    accessToken: '<insert ACCESS_TOKEN here>'
}).addTo(map);

The currently-valid Mapbox map styles, to use for map_IDs, are listed in the Mapbox documentation - only the final part of each is required, e.g. "mapbox/light-v10".

MapTiler Cloud

In order to use MapTiler maps, you must register. Once registered, get your API key from Account->Keys, which you have to pass to L.tileLayer.provider in the options:

L.tileLayer.provider('MapTiler.Streets', {
    key: '<insert key here>'
}).addTo(map);

MapTiles API

In order to use OpenStreetMap in English, French or Spanish provided by MapTiles API, you must register. Once registered, you have to add your key to L.tileLayer.provider in the options:

L.tileLayer.provider('MapTilesAPI.OSMEnglish', {
    apikey: '<insert key here>'
}).addTo(map);

Thunderforest

In order to use Thunderforest maps, you must register. Once registered, you have an api_key which you have to pass to L.tileLayer.provider in the options:

L.tileLayer.provider('Thunderforest.Landscape', {apikey: '<insert api_key here>'}).addTo(map);

Esri/ArcGIS

In order to use ArcGIS maps, you must register and abide by the terms of service. No special syntax is required.

Available Esri layers

TomTom

In order to use TomTom layers, you must register. Once registered, you can create an apikey which you have to pass to L.tileLayer.provider in the options:

L.tileLayer.provider('TomTom', {
    apikey: '<insert your API key here>'
}).addTo(map);

Geoportail France

In order to use Geoportail France resources, you need to obtain an api key that allows you to access the resources you need. Pass this api key and the ID of the resource to display to L.tileLayer.provider in the options:

L.tileLayer.provider('GeoportailFrance', {
    variant: '<insert resource ID here>',
    apikey: '<insert api key here>'
}).addTo(map);

Please note that a public api key (choisirgeoportail) is used by default and comes with no guarantee.

4 aliases are also provided for common Geoportail resources : GeoportailFrance, GeoportailFrance.orthos, GeoportailFrance.ignMaps and GeoportailFrance.parcels (See index.html demo).

Stadia Maps

In order to use Stadia maps, you must register. Once registered, you can whitelist your domain within your account settings.

Attribution

This work was inspired from https://gist.github.com/1804938, and originally created by Stefan Seelmann.

What do we mean by free?

1 We try to maintain leaflet-providers in such a way that you'll be able to use the layers we include without paying money. This doesn't mean no limits apply, you should always check before using these layers for anything serious.

leaflet-providers's People

Contributors

abierbaum avatar almccon avatar brunob avatar calvinmetcalf avatar chatelao avatar cquest avatar dependabot[bot] avatar dpix avatar duncmc avatar gcebelieu avatar gutenye avatar jayyx2 avatar jieter avatar jluc avatar kopytjuk avatar kyroskoh avatar mcguffin avatar pensierinmusica avatar seelmann avatar simon04 avatar slavino avatar stefanocudini avatar stell avatar stevenheinrich avatar tmwdr avatar tomhughes avatar tyrasd avatar voda avatar ximex avatar zerocrates avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.