GeezerVison is showing leafletjs.com — Plugins - Leaflet
Leaflet plugins database
While Leaflet is meant to be as lightweight as possible, and focuses on a core set of features, an easy way to extend its functionality is to use third-party plugins. Thanks to the awesome community behind Leaflet, there are literally hundreds of nice plugins to choose from. Within each section, they’re sorted by GitHub stars.
Small geocoding plugin that brings address search to Leaflet, with support for Google, OpenStreetMap Nominatim, Bing, Esri and more. Easily extensible.
Geocoding and reverse geocoding with the MapTiler Geocoding API, from states and cities down to addresses and POIs. Supports many languages, per-country limits, fuzzy matching and autocomplete.
A form field for picking a location by panning the map under a fixed pin. Comes as a <location-picker> web component and a JavaScript class, with address search and a locate button.
Leaflet plugin that provides direction markers that can indicate the position of a marker, even when it is out of range or covered by a control. Can be used, for example, to highlight markers when hovering on labels in a sidebar.
A lightweight Leaflet plugin that adds a burger menu with nested submenus to the map interface. Hovering over menu items reveals submenus, and clicking items can trigger custom actions.
JavaScript library for displaying tiles from ArcticWebMap, a free tile provider with OSM data in multiple Arctic polar projections. Includes lower-level API for deeper integration with other Leaflet plugins.
A leafletjs plugin that makes it easy to overlay all the different tile layers available from the Azure Maps. Supports using an Azure Maps subscription key or Azure Active Directory for authentication.
Load basemaps and GIS raster layers in formats beyond plain tile URLs, such as WMS, WMTS, GeoTIFF and MBTiles, or show really big non-map images, such as IIIF and DeepZoom.
Display small and large GeoTIFF files with configurable resolution. Built for simplicity and performance. Integrates with GeoBlaze, a JavaScript raster analysis library.
Displays georeferenced IIIF images, warped into place with WebGL. Gives access to hundreds of thousands of historical maps from libraries, archives and museums. See allmaps.org for more.
Display raster data from geoTIFF files as images or direction arrows. Rasters can be styled and queried in the client. An optional clipping mask can be applied, e.g. to restrict DEMs to land areas.
Provides multispectral channel manipulation and processing tools (such as NDVI or other remote sensing methods) for Leaflet image layers using pure client-side JavaScript. It uses image-sequencer via an ImageOverlay filter() function.
Vector Tiles plugin for Leaflet. Use the power of the MapTiler SDK to access their catalog of professionally created multi-lingual vector tile basemaps. You can also use it for vector tile data overlays.
Renders S-57 and S-101 electronic navigational charts (ENC .000 files) on the map with IHO S-52 symbology: depth areas, soundings, buoys, lights and coastline. Parsing happens in the browser, no server or GDAL needed.
Draws a projection aware grid of latitude and longitude lines, with labels on the lines and options to set the extent of and interval between the lines.
Live day/night shading with smooth civil, nautical and astronomical twilight, painted per tile. Includes a layer that masks city lights imagery (NASA Black Marble) to the night side.
Renders world country boundaries keyed by ISO 3166-1 alpha-2 codes, with per-country colors, permanent labels and click/hover popups. Built on leaflet.regions.
Renders GeoJSON regions with per-feature colors, permanent labels and click/hover popups, bound to data through a simple key → object map. The base of leaflet.us-states and leaflet.countries.
Reads the default icon options from CSS, so that marker icon URLs work with bundlers and frameworks that rewrite URLs in CSS (webpack, Rails Asset Pipeline, Django pipeline). Fixes #4968.
A Drupal module for Leaflet maps, from basic to advanced: draw and insert points and geometries, and display CMS data dynamically with tokens. Used by over 25,000 sites.
Seven plugins for various features, independent of the MapBBCode library: from circular and popup icons to buttons, layer switcher, better search and attribution.
A WordPress plugin for pinning, organizing and sharing places and tracks, with elevation charts. Bundles several Leaflet plugins, including markercluster, fullscreen, minimap and locatecontrol.
WordPress plugin to showcase widely distributed locations on a single map with additional navigation tabs for regions. The map is based on Leaflet JS and offers you several free map styles. Gutenberg Block included.
A WordPress plugin that lets visitors add locations from the frontend without registering. New locations wait for your approval before they get published.
Overlay display
The following plugins provide new ways of displaying overlay data information.
Markers & icons
New kinds of markers and icons: icon fonts, SVG and canvas markers, photos, directional symbols, and markers for points outside the view.
Lightweight plugin that adds colorful iconic markers without image and gives full control of style to end user (i.e. Unlimited colors and CSS styling).
Leaflet plugin that provides direction markers that can indicate the position of a marker, even when it is out of range or covered by a control. Can be used, for example, to highlight markers when hovering on labels in a sidebar.
Reprojects polylines from a source CRS (Coordinate Reference System) so that they look like curves. Meant to better display bounding boxes of raster images in arbitrary CRSs.
Styling & labels
Style overlays from data, fill them with patterns, or label them. Leaflet users versed in GIS also know these as symbolizers.
Highlight Leaflet lines and polygons by adding a border and raising them above others. Add a transparent border to increase the tolerance for mouse/touch interactions.
Extend the Polygon Object to fill canvas element with an image pattern. Performance is better than svg rendering. Can improve the rendering performance of big data.
Plays back a trajectory, rotating the marker in the direction of travel and coloring the traveled and remaining parts of the path differently. Speed and more are configurable.
A simple plugin to create Feature Groups that add their child layers into a parent group. Typical usage is to switch them through L.Control.Layers to dynamically add/remove groups of markers from Leaflet.markercluster.
Add-on for the Leaflet.glify plugin to provide more leaflet-idiomatic bindings. Provides fast webgl rendering for GeoJSON FeatureCollections (currently limited to polygons, lines and points).
An Apache ECharts 5 extension that adds a Leaflet map as a coordinate system, so ECharts series like scatter, lines and heatmaps render on top of Leaflet layers.
JS library for visualizing 3D OSM buildings on top of Leaflet.
Overlay interaction
The following plugins enable users to interact with overlay data: edit geometries, select areas or features, interact with the time dimension, search features and display information about them.
Edit geometries
Allows users to create, draw, edit and/or delete points, lines and polygons.
Draw, edit, drag, cut, rotate, split, scale, measure, snap and pin markers, polylines, polygons, circles, rectangles, image overlays, text and more. Supports holes in polygons and canvas mode.
Terra Draw’s TerraDrawLeafletAdapter allows users to create, select and edit a variety of geometry types (points, lines polygons etc) on a Leaflet map.
Plugin to Leaflet.Draw to allow adding/moving/removing custom SVG files on a leaflet map. It allows to define a SVG as XML text, and converts it into an SVG object that can be displayed by leaflet as an editable feature.
Extends Leaflet.draw to add a new set of tools which allow the user to select a L.geoJSON line to trace or snap a marker to.
Time & elevation
Most data is two-dimensional (latitude and longitude), but some data has more dimensions (altitude and/or time). The following plugins help users navigate these extra dimensions.
Hillshading and slope layer from RGB-encoded DEM tiles (Mapterhorn, Terrarium, Mapbox Terrain-RGB or a custom encoding), with configurable sun position and slope colors.
Search & filter
Search for markers and features on the map, or filter them by their properties. To search for addresses and places, see geocoding.
A control for searching markers and features in a LayerGroup or GeoJSON by a custom property. Supports AJAX/JSONP, autocompletion and 3rd party services.
A Leaflet Plugin for Edge Cases. For use when you want popups on mouseover, not click, and you need popup tips to reorient as you get close to the edges of your map.
Find interesting features near a location using Mapbox Vector Tiles data, to add interactive functionality to a tile layer with speed and limited bandwidth.
Leaflet plugin that creates a synchronized minimap preview to switch between multiple basemap layers. With a click on the minimap the next basemap layer in the sequence is applied.
Plugin for the Leaflet maps that allows grouping places in groups whose visibility can be toggled.
Navigation
Change the way the user moves around the map: zoom and pan controls, map rotation, saved and shared views, fullscreen, and control over scroll and touch gestures.
Brings the basic functionality of Google Maps Gesture Handling into Leaflet. Prevents users from getting trapped on the map when scrolling a long page.
Lets you use a smaller part of the map as its active area: all positioning methods (setView, fitBounds, setZoom) apply to that part instead of the whole map.
Allows you to display a small portion of the map at another zoom level, either at a fixed position or linked to the mouse movement, for a magnifying glass effect.
A form field for picking a location by panning the map under a fixed pin. Comes as a <location-picker> web component and a JavaScript class, with address search and a locate button.
A lightweight Leaflet plugin that adds a burger menu with nested submenus to the map interface. Hovering over menu items reveals submenus, and clicking items can trigger custom actions.
Sidebars & panels
Sidebars, windows, messages and loading indicators.
Automatic PDF printing of routes (i.e. polylines) with custom scale, paper size and margin by covering the route with a sequence of identical rectangles.
Analysis & services
Geoprocessing & projections
Geometry operations, spatial indexes and antimeridian handling, plus support for other projections and coordinate systems.
A simple way to convert L.LatLng into UTM (WGS84) and vice versa. UTM string format easily configurable. It does not depend on any other plugin or 3rd party.
A plugin to allow polygons and polylines to naturally draw across the Antimeridian (or the International Date Line) instead of always wrapping across the Greenwich meridian.
Wraps vector layers (polylines, polygons, circles, markers, GeoJSON) across the antimeridian without splitting them, copying them into every visible world copy.
Routing
The following plugins use external services to calculate driving or walking routes.
Control for route search with via points, displaying itinerary and alternative routes. Uses OSRM by default, but also supports GraphHopper, Mapbox Directions API and more.
Small geocoding plugin that brings address search to Leaflet, with support for Google, OpenStreetMap Nominatim, Bing, Esri and more. Easily extensible.
A clean and extensible control for both geocoding and reverse geocoding. Built-in support for Nominatim, Bing, MapQuest, Mapbox, What3Words, Google and Photon. Easy to extend to other providers.
Geocoding and reverse geocoding with the MapTiler Geocoding API, from states and cities down to addresses and POIs. Supports many languages, per-country limits, fuzzy matching and autocomplete.
Autocomplete search for all U.S. cities, based on U.S. Census Gazetteer data, with fly-to, a marker and a popup with city details.
Develop your own
Leaflet keeps it simple. If you can think of a feature that is not required by all Leaflet users, and you can write the JavaScript code in a reusable way, you’ve got yourself a Leaflet plugin already.
There are no hard requirements on how to create your own plugin, but all developers are encouraged to read the recommendations in the plugin guide.
Once your plugin is ready, you can submit it: copy template.md into the category folder in /docs/_plugins/ that fits your plugin, fill it in, and send a pull request to our GitHub repository. If your plugin works with Leaflet 2, set compatible-v2: true to have it listed in the Ready for Leaflet 2 section too.
You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.