Now available on GitHub Releases

Serve Vector TilesAt Lightning Speed

High-performance vector tile server built in Rust. Serve PMTiles and MBTiles with native MapLibre rendering for static images.

brew install vinayakkulkarni/tap/tileserver-rs

Features

Everything You Need

A complete solution for serving vector tiles in production.

Blazing Fast

Built in Rust for maximum performance. Serve tiles with sub-millisecond latency.

PMTiles & MBTiles

Native support for modern PMTiles and classic MBTiles tile archives.

Vector & Raster

Serve vector tiles directly or render them to raster on-the-fly.

Static Images

Generate static map images like Mapbox Static API with native MapLibre rendering.

Self-Hosted

Run on your own infrastructure. No vendor lock-in, no API keys required.

TileJSON 3.0

Full TileJSON 3.0 specification support with automatic metadata generation.

Configuration

Simple Setup

Get started with a simple TOML configuration file. Define your tile sources, styles, and server settings in one place.

  • Multiple tile sources (PMTiles, MBTiles)
  • Custom MapLibre GL styles
  • Configurable CORS and caching
  • Font glyph serving
config.toml
# Server configuration
[server]
host = "0.0.0.0"
port = 8080

# Tile sources
[[sources]]
id = "openmaptiles"
type = "pmtiles"
path = "/data/tiles.pmtiles"

# Map styles
[[styles]]
id = "osm-bright"
path = "/data/styles/osm-bright/style.json"

API Reference

RESTful API

Simple, standards-compliant API for all your tile serving needs.

Vector Tiles

GET
/data/{source}/{z}/{x}/{y}.pbf
GET
/data/{source}.json

Raster Tiles

GET
/styles/{style}/{z}/{x}/{y}.png
GET
/styles/{style}/{z}/{x}/{y}@2x.png

Static Images

GET
/styles/{style}/static/{lon},{lat},{zoom}/{w}x{h}.png

Metadata

GET
/styles/{style}/style.json
GET
/health

Get Started

Ready to Deploy?

Deploy your own tile server in minutes with our comprehensive documentation.