This is a
playground to test code. It runs a full
Node.js environment and already has all of
npm’s 400,000 packages pre-installed, including
Leaflet.TileLayer.MBTiles with all
npm packages installed. Try it out:
This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.
The following demo loads a ~9.6MB
.mbtiles file with the "countries" style from the good ol' Tilemill:
Any recent version of Firefox, Chrome or Safari should work without problems. IE10/IE11 should work with a
Include Leaflet in your HTML, like:
<link rel="stylesheet" href="https://firstname.lastname@example.org/dist/leaflet.css" /> <script src="https://email@example.com/dist/leaflet.js"></script>
sql.js library, like:
Include Leaflet.TileLayer.MBTiles, like:
Once everything is loaded, you can instantiate
L.TileLayer.MBTiles just by providing
the URL to a
var mb = L.tileLayer.mbTiles('http://server/something/cool-stuff.mbtiles').addTo(map);
.mbtiles have metadata rows which is not in the specification
This plugin will handle the following optional metadata rows, if they exist:
minzoom(as the layer's
maxzoom(as the layer's
attribution(as the layer's
attributionoption). Due to the async nature of the code, attribution might not show up properly if the layer is added to the map before its database is loaded.
To work around the asynchronous attribution problem, this might not work very well. Consider handling the metadata manually and setting Leaflet layer options accordingly.
"THE BEER-WARE LICENSE": firstname.lastname@example.org wrote this file. As long as you retain this notice you can do whatever you want with this stuff. If we meet some day, and you think this stuff is worth it, you can buy me a beer in return.