Coder Social home page Coder Social logo

mbtileserver-rs's Introduction

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

Crates.io Coverage Status

Tested with rust 1.54

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:

mbtileserver 0.1.7
A simple mbtile server

USAGE:
    mbtileserver [FLAGS] [OPTIONS]

FLAGS:
        --disable-preview    
            Disable preview map
    -h, --help               
            Prints help information

    -V, --version            
            Prints version information


OPTIONS:
        --allowed-hosts <allowed_hosts>    
            "*" matches all domains and ".<domain>" matches all subdomains for the given domain
             [default: localhost, 127.0.0.1, [::1]]
    -d, --directory <directory>            
            Tiles directory
             [default: ./tiles]
    -H, --header <header>...               
            Add custom header
    -p, --port <port>                      
            Server 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.

You can adjust the log level by setting RUST_LOG environment variable. Possbile values are trace, debug, info, warn, error.

Endpoints

Endpoint Description
/services lists all discovered and valid mbtiles in the tiles directory
/services/<path-to-tileset> shows tileset metadata
/services/<path-to-tileset>/map tileset preview
/services/<path-to-tileset>/tiles/{z}/{x}/{y}. returns tileset tile at the given x, y, and z
/services/<path-to-tileset>/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.

mbtileserver-rs's People

Contributors

ka7eh avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.