https://github.com/banesullivan/localtileserver
đ dynamic tile server for visualizing rasters in Jupyter with ipyleaflet or folium
https://github.com/banesullivan/localtileserver
dynamic-tiling folium geospatial gis ipyleaflet jupyter large-image localtileserver map-tiles python raster satellite-imagery visualization
Last synced: 6 months ago
JSON representation
đ dynamic tile server for visualizing rasters in Jupyter with ipyleaflet or folium
- Host: GitHub
- URL: https://github.com/banesullivan/localtileserver
- Owner: banesullivan
- License: mit
- Created: 2021-11-18T04:47:16.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-01T21:22:43.000Z (8 months ago)
- Last Synced: 2025-05-12T15:13:50.785Z (6 months ago)
- Topics: dynamic-tiling, folium, geospatial, gis, ipyleaflet, jupyter, large-image, localtileserver, map-tiles, python, raster, satellite-imagery, visualization
- Language: Python
- Homepage: https://localtileserver.banesullivan.com
- Size: 112 MB
- Stars: 324
- Watchers: 11
- Forks: 29
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- Awesome-Geospatial - localtileserver - A Python package for serving tiles from large raster files in the Slippy Maps standard (i.e., `/zoom/x/y.png`) for visualization in Jupyter with `ipyleaflet` or `folium`. (Python)
- awesome-open-geoscience - localtileserver
- awesome-gis - localtileserver - Easily visualize large geospatial images with ipyleaflet or folium in Jupyter or in a web browser with CesiumJS. (Geospatial Library / Python)
README

# đ Local Tile Server for Geospatial Rasters
[](https://codecov.io/gh/banesullivan/localtileserver)
[](https://pypi.org/project/localtileserver/)
[](https://anaconda.org/conda-forge/localtileserver)
*Need to visualize a rather large (gigabytes+) raster?* **This is for you.**
A Python package for serving tiles from large raster files in
the [Slippy Maps standard](https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames)
(i.e., `/zoom/x/y.png`) for visualization in Jupyter with `ipyleaflet` or `folium`.
Launch a [demo](https://github.com/banesullivan/localtileserver-demo) on MyBinder [](https://mybinder.org/v2/gh/banesullivan/localtileserver-demo/HEAD)
Documentation: https://localtileserver.banesullivan.com/
Built on [rio-tiler](https://github.com/cogeotiff/rio-tiler)
## đ Highlights
- Launch a tile server for large geospatial images
- View local or remote* raster files with `ipyleaflet` or `folium` in Jupyter
- View rasters with CesiumJS with the built-in web application
**remote raster files should be pre-tiled Cloud Optimized GeoTiffs*
## đ Usage
Usage details and examples can be found in the documentation: https://localtileserver.banesullivan.com/
The following is a minimal example to visualize a local raster file with
`ipyleaflet`:
```py
from localtileserver import get_leaflet_tile_layer, TileClient
from ipyleaflet import Map
# First, create a tile server from local raster file
client = TileClient('path/to/geo.tif')
# Create ipyleaflet tile layer from that server
t = get_leaflet_tile_layer(client)
m = Map(center=client.center(), zoom=client.default_zoom)
m.add(t)
m
```

## âšī¸ Overview
The `TileClient` class can be used to to launch a tile server in a background
thread which will serve raster imagery to a viewer (usually `ipyleaflet` or
`folium` in Jupyter notebooks).
This tile server can efficiently deliver varying resolutions of your
raster imagery to your viewer; it helps to have pre-tiled,
[Cloud Optimized GeoTIFFs (COGs)](https://www.cogeo.org/).
There is an included, standalone web viewer leveraging
[CesiumJS](https://cesium.com/platform/cesiumjs/).
## âŦī¸ Installation
Get started with `localtileserver` to view rasters in Jupyter or deploy as your
own Flask application.
### đ Installing with `conda`
Conda makes managing `localtileserver`'s dependencies across platforms quite
easy and this is the recommended method to install:
```bash
conda install -c conda-forge localtileserver
```
### đĄ Installing with `pip`
If you prefer pip, then you can install from PyPI: https://pypi.org/project/localtileserver/
```
pip install localtileserver
```
## đ Feedback
Please share your thoughts and questions on the [Discussions](https://github.com/banesullivan/localtileserver/discussions) board.
If you would like to report any bugs or make feature requests, please open an issue.
If filing a bug report, please share a scooby `Report`:
```py
import localtileserver
print(localtileserver.Report())
```