Note: This project started as a partial implementation of the API and features provided by mbtileserver written in Go by Brendan Ward. It might diverge from that project in the future.

rust-mbtileserver

Tested with rust 1.41

A simple Rust-based server for map tiles stored in mbtiles format.

Usage

Run mbtileserver --help for a list and description of the available flags:

``` MBTiles Server

USAGE: mbtileserver [OPTIONS]

FLAGS: -h, --help Prints help information -V, --version Prints version information

OPTIONS: -d, --directory Tiles directory [default: ./tiles] -p, --port Port [default: 3000] ```

Run mbtileserver to start serving the mbtiles in a given folder. The default folder is ./tiles and you can change it with -d flag. The server starts on port 3000 by default. You can use a different port via -p flag.

Endpoints

| Endpoint | Description | |-------------------------------------------------------------|--------------------------------------------------------------------------------| | /services | lists all discovered and valid mbtiles in the tiles directory | | /services/ | shows tileset metadata | | /services//map | tileset preview | | /services//tiles/{z}/{x}/{y}. | returns tileset tile at the given x, y, and z | | /services//tiles/{z}/{x}/{y}.json | returns UTFGrid data at the given x, y, and z (only for tilesets with UTFGrid) |

Docker

You can test this project by running docker-compose up. It starts a server on port 3000 and serves the tilesets in ./tiles directory.