Remix.run Logo
pratio 11 hours ago

This is interesting. We recently deployed a solution that uses pmtiles and it's great.

https://docs.protomaps.com/pmtiles/

afaik, pmtiles uses mvt, let's hope the tooling to convert the tiles to mlt also becomes available.

dzogchen 11 hours ago | parent | next [-]

PMTiles is actually pretty agnostic to what kind of tiles it contains! There is already a PMTiles PR that updates the byte that specifies the type of tile to include MLT.

https://github.com/protomaps/PMTiles/pull/596

thibaut_barrere 6 hours ago | parent | next [-]

Neat, as someone integrating PMTiles right now, thank you!

pratio 10 hours ago | parent | prev [-]

Oh wow, thank you, looking forward to this

jamessb 11 hours ago | parent | prev | next [-]

PMtiles is often used with MVT tiles, but it can encapsulate a variety of tile types: the current spec [1] has defined tile types for MVT, PNG, JPEG, WebP and AVIF (plus "Unknown/Other").

[1]: https://github.com/protomaps/PMTiles/blob/main/spec/v3/spec....

pratio 10 hours ago | parent [-]

Absolutely, we have MVT tiles at the moment, I'm hoping to test MLT soon

maelito 9 hours ago | parent | prev | next [-]

I'm building PMTiles through Tilemaker, PMTiles is incredible, but sadly it will take a lot of work to produce MLT though Tilemaker :/

Humphrey 11 hours ago | parent | prev [-]

Oh pmtiles is such a simple and innovative solution!

jarl-ragnar 2 hours ago | parent | next [-]

It is. I’ve found it so useful I created an Elixir library to act as a cache in front on a pmtiles file. https://hex.pm/packages/ex_pmtiles

pratio 10 hours ago | parent | prev [-]

Yes, Absolutely in love with it. Loading tiles with range requests made our application so much faster.

jtbaker 8 hours ago | parent [-]

It's very cool! If you want to get higher cache hit rates from a CDN or redis etc. and lower the amount of S3 reads, you can get set up a proxy to convert `/{z}/{x}/{y}.mvt` requests into the byte-range requests: https://docs.protomaps.com/deploy/

Brandon has some example code you can lift to dump it into a Cloudflare Worker or other platforms on that page.

pratio 7 hours ago | parent [-]

Thank you. I'm going to try this on a different project that we have. Our current deployment is designed to work directly through s3/api gateway which reduces the number of moving parts.

We update the tiles frequently, so the setup has been amazing for us.