Vector tile server that generates tiles on the fly from PostGIS and serves PMTiles and MBTiles
- Stars3.7k
- Forks366
- Open Issues82
Apache-2.0
- Rust
- TypeScript
- Shell

About Martin
Martin is a vector tile server that turns spatial data into map tiles for web and native clients. It generates tiles on the fly from large PostgreSQL/PostGIS databases and serves prebuilt tiles from PMTiles and MBTiles files, so a styled basemap can be hosted without a heavyweight tile stack.
Point it at a PostGIS database and it discovers compatible tables and functions automatically, exposing each as a tile source. It also reads PMTiles from local files or over HTTP, serves MBTiles, combines several sources into one, and produces styles, sprites, and font glyphs on the fly. Configuration is by CLI flags or a config file.
The bundled tools extend it beyond serving: martin-cp generates MBTiles in bulk from any supported source, and the mbtiles tool can examine, copy, validate, compare, and diff MBTiles files. Martin is written in Rust and developed under the MapLibre organization.
Key features
- Generate vector tiles on the fly from PostGIS
- Serve PMTiles over HTTP and MBTiles files
- Combine multiple tile sources into one
- Serve styles and generate sprites or font glyphs
- Bulk-generate MBTiles and diff them with mbtiles tool
Details
- First released
- 2017
- Sources
- PostGIS · PMTiles · MBTiles
- Deployment
- Self-hostable
- Language
- Rust
- Governance
- MapLibre organization
- License
- Apache-2.0 or MIT
