👋Welcome
Online documentation and usage examples to speed up your maps in no time.
LOD (Levels of Detail) is a thin map tile proxy with in-memory caching and a slim authentication backend built with performance in mind. It will sit in front of any tile server and will aggressively cache tiles in memory, optionally storing them in a configured Redis cluster for faster fetching later. LOD is cluster-aware and uses Redis message queueing for intra-cluster communication when multiple instances are deployed together.
LOD is written in Go 1.19 using fiber. TOML is used for configuration. Go templates are used for templating. Internal in-memory caching is built upon the bigcache library by allegro.
These docs are for LOD v0, which is in active development. LOD v1 is coming soon. See the Roadmap for more info.
Getting Started
Download a build from the releases page or just run:
NOTE: You'll need the GEOS library installed on your system to use some of LOD's more advanced cache invalidation and priming functionality.
Or just use our Docker image!
You can create your own Dockerfile
that adds a config.toml
from the context into the config directory, like so:
Alternatively, you can specify something along the same lines with Docker run options:
Core Principles
Lightweight, parallel, and non-blocking
Tileserver agnostic (Martin, Tegola, flat file NGINX, etc.)
Tile format and content agnostic
Vector (Mapbox Vector Tiles or other vector formats)
Raster (PNG/JPG/TIFF)
And more...
Supports XYZ (Slippy) and TMS tile indexing schemes
License
LOD is licensed under the GNU Affero General Public License 3 or any later version at your choice. See COPYING for details.
More Tile Resources
Last updated