[HN Gopher] VersaTiles - a complete FLOSS map stack
       ___________________________________________________________________
        
       VersaTiles - a complete FLOSS map stack
        
       Author : moooo99
       Score  : 88 points
       Date   : 2024-10-20 13:51 UTC (9 hours ago)
        
 (HTM) web link (versatiles.org)
 (TXT) w3m dump (versatiles.org)
        
       | cpach wrote:
       | Anyone tried this?
        
       | hawski wrote:
       | I am only getting to the space, but if I understand correctly the
       | overview it is a tile server speaking HTTP, but it is not working
       | like Protomaps, which do not need a separate tile server, just a
       | regular HTTP server with range requests support.
        
         | cldellow wrote:
         | It's a bit complicated, because I think the versatiles brand is
         | used to describe multiple things:
         | 
         | - the schema of the map: what objects are available in each
         | tile at different zoom levels. It sounds like versatiles uses
         | the shortbread schema (contrast vs OpenMapTiles, protomaps)
         | 
         | - a container format: a way to pack multiple tiles into a
         | single file. It sounds like they created their own format here
         | (contrast vs mbtiles, pmtiles).
         | 
         | - the scripts/tooling to build everything
         | 
         | - the overall finished map product itself (contrast vs Google
         | Maps, Stadio Maps, protomaps, OpenMapTiles, etc)
         | 
         | The versatile container format seems to require a custom HTTP
         | server. But if you want, you could produce the versatiles map
         | and store it in a pmtiles container. Or you could stick a
         | caching proxy in front of their publicly available tile server
         | at https://tiles.versatiles.org/tiles/osm/{z}/{x}/{y}
         | 
         | It would be interesting to hear them describe why they decided
         | to create their own container format. The text that I have
         | found seems to be contrasting it to RDBMS containers, but is
         | silent about mbtiles/pmtiles.
        
           | SahAssar wrote:
           | Just a small clarification: mbtiles is built on a RDBMS
           | (sqlite).
        
           | moooo99 wrote:
           | As far as my understanding goes, mbtiles is based on SQLite,
           | so it would be a RDBMS container based format.
           | 
           | There was a YouTube talk published 4 weeks ago showcasing
           | this project, which was where I discovered it in the first
           | place. The (German) video can be found here
           | https://youtu.be/8A51WkJ5S8I
        
             | cldellow wrote:
             | Thanks, that's a handy video! Yes, mbtiles is based on
             | SQLite, I was imprecise in my language.
             | 
             | When I said RDBMS, I meant those that have a client/server
             | model. The versatiles docs talk about the complexity and
             | surface area of database systems as a motivator for
             | creating their own container format. From this I inferred
             | they were referring to Postgres and PostGIS, which are used
             | in the canonical OpenMapTiles implementation.
             | 
             | Watching that video, they do mention not liking the
             | traditional Postgres/PostGIS approach due to its heavy
             | weight. But they also say they disliked mbtiles due to its
             | SQLite dependency, and that the versatiles format is
             | inspired on/based on pmtiles. (Apologies if I'm missing
             | nuance here, I was watching auto translated auto generated
             | captions.)
             | 
             | I found https://github.com/versatiles-org/versatiles-
             | rs/issues/24 which contrasts the versatiles format vs the
             | pmtiles format. After reading it, I'm not personally
             | convinced of the benefits of versatiles vs just throwing a
             | CDN in front of a clustered pmtiles file, but perhaps I'm
             | missing something.
        
       | thybag wrote:
       | I'd be interested to understand how this compares with a solution
       | like openfreemap's
       | (https://news.ycombinator.com/item?id=41635592) which was posted
       | a few weeks ago.
       | 
       | What is it that sets this apart from other similar solutions?
        
         | mhuffman wrote:
         | There really seems to be a lot of movement in the map space
         | these days!
        
         | moooo99 wrote:
         | Functionally they are rather similar in what they're aiming
         | for. Architecturally there are some differences.
         | 
         | OpenFreeMap uses the MapTiles format [1] which is an open
         | source format for vector tiles that does require the
         | attribution of the OpenMapTiles page for every map generated
         | from it (CC-BY license). Versatiles uses the Shortbread format
         | instead [2] which is published under a CC0 license. Instead of
         | the SQLite based mbtiles format they developed their own
         | container format (and a converter).
         | 
         | I've only started tinkering with this project a little bit
         | cause I found it interesting after watching a CCC talk with it
         | [3]
         | 
         | [1] https://openmaptiles.org/
         | 
         | [2] https://shortbread-tiles.org/
         | 
         | [3] German: https://youtu.be/8A51WkJ5S8I
        
       | guwop wrote:
       | cool beans! lots of stuff happening with OSS mapping rn!
        
       | szvsw wrote:
       | Only mildly related, but has any one else been using Martin [0]
       | for tile serving from Postgres/PostGis? It's been a huge benefit
       | to me and probably my favorite open source map tool right now.
       | Martin + Deck.GL is such an awesome combo.
       | 
       | [0] https://maplibre.org/martin/introduction.html
        
       ___________________________________________________________________
       (page generated 2024-10-20 23:00 UTC)