Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Oslandia/postile

Project migrated to: https://gitlab.com/Oslandia/postile
https://github.com/Oslandia/postile

asyncpg gis mapbox openmaptiles openmaptiles-schema postgis postgresql sanic vector vector-tiles

Last synced: 3 months ago
JSON representation

Project migrated to: https://gitlab.com/Oslandia/postile

Awesome Lists containing this project

README

        


PostTile




Build Status


Package version

---

Fast Mapbox Vector Tile Server mainly suited for the [openmaptiles vector tile schema](https://github.com/openmaptiles/openmaptiles)

## Features

- Support for PostGIS backend through a tm2source (as generated by [OpenMapTiles](https://github.com/openmaptiles/openmaptiles))
- Support for PostGIS single layers
- Support for reading MBTiles
- On-the-fly reprojection to web mercator EPSG:3857 (only for single layers)
- Connection pooling and asynchronous requests thanks to [asyncpg](https://github.com/MagicStack/asyncpg)

## Requirements

- Python `>= 3.6`
- for PostGIS backend, recent `ST_AsMVT` function. At least PostGIS >= 2.4.0.

## Installation

pip install cython
pip install -e .
postile --help

## Using a Docker container

Start Postile with:

docker run --network host oslandia/postile postile --help

## Example of serving postgis layers individually

postile --pguser **** --pgpassword **** --pgdatabase mydb --pghost localhost --listen-port 8080 --cors

Then layer `boundaries` can be served with:

http://localhost:8080/boundaries/z/x/y.pbf?fields=id,name

`fields` is optional, and when absent only geometries are encoded in the vector tile.

## Preview

The root endpoint will display a built-in viewer with `mapbox-gl-js`.
In `DEBUG` mode the same page will also add some checkboxes to show tile boundaries and collision boxes (for labels).

---
*For a concrete example using OpenMapTiles schema see [this tutorial](https://github.com/ldgeo/postile-openmaptiles)*