martin/mbtiles
Yuri Astrakhan 1a8e7c89a4
Implement http pmtiles (#991)
PMTiles is a web-optimized format, allowing the actual file to be read
with HTTP range requests. Supporting this use case instantly allows
Martin to function as a lambda executable accessing PMTiles, but without
any significant investment into devops or hosting large file.

PMTiles config now also allows `http` and `https` protocol.

```
# Publish PMTiles files
pmtiles:
  paths:
    # specific pmtiles file will be published as mypmtiles source
    # (use last portion of the URL without extension)
    - http://example.org/path/to/mypmtiles.pmtiles
  sources:
    # named source matching source name to a single file
    pm-src1: https://example.org/path/to/some_pmtiles.pmtiles
 ```

fixes #884

---------

Co-authored-by: Kyle Slugg-Urbino <35903887+kyleslugg@users.noreply.github.com>
2023-12-22 06:01:50 +00:00
..
.sqlx Multiple mbtiles and martin-cp fixes (#1083) 2023-12-18 23:19:36 -05:00
src Multiple mbtiles and martin-cp fixes (#1083) 2023-12-18 23:19:36 -05:00
tests Implement http pmtiles (#991) 2023-12-22 06:01:50 +00:00
.env Rename martin-mbtiles crate to mbtiles (#976) 2023-10-28 08:50:49 +00:00
Cargo.toml Multiple mbtiles and martin-cp fixes (#1083) 2023-12-18 23:19:36 -05:00
README.md Revert doc book links - may break a few new ones (#1018) 2023-11-21 08:06:27 +00:00

mbtiles

Book docs.rs docs Slack chat GitHub crates.io version CI build

A library to help tile servers like Martin work with MBTiles files. When using as a lib, you may want to disable default features (i.e. the unused "cli" feature).

This crate also has a small utility that allows users to interact with the *.mbtiles files from the command line. See tools documentation for more information.

Development

Any changes to SQL commands require running of just prepare-sqlite. This will install cargo sqlx command if it is not already installed, and update the ./sqlx-data.json file.

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.