frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

MapLibre Tile: A next generation geospatial format optimized for rendering

https://arxiv.org/abs/2508.10791
101•mtremmel•2d ago

Comments

alexmuro•4h ago
This is interesting, is there a reference implementation that exists somewhere? Will there be a fork of tippecanoe that can encode these files or something different?
nbadg•4h ago
"As of January 2025, implementation has started for MapLibre GL JS and MapLibre Native." [1]

Github shows java, js, rust, and typescript folders, though I didn't poke any further beyond literally just looking at the folder names. [2]

[1] https://maplibre.org/roadmap/maplibre-tiles/

[2] https://github.com/maplibre/maplibre-tile-spec

dzogchen•3h ago
We are finishing up the CLI for encoding tiles for public release: https://github.com/maplibre/maplibre-tile-spec/pull/504 Likely a project like Planetiler will integrate this.

Still needs some work on the documentation side. There will be a separate announcement when it is done. We have a newsletter that we share on all the common social networks. https://maplibre.org/news/

Aside from getting the encoding side ready so tile providers can start to make MapLibre Tiles available, we are focussed on integrating the decoder in MapLibre GL JS (MapLibre for the web) and MapLibre Native (Android, iOS and other platforms). ETA is sometime near the end of 2025.

I work as a maintainer for MapLibre, let me know if you have any other questions about the project!

catwhatcat•2h ago
Thanks for your work! Out of curiosity, do you know why this project chose to go with Java as it's core? Great to see you're also supporting TS + Rust out of the gate
alexmuro•2h ago
Thank you for the link to the git repo, this looks great. Thank you for your work. MapLibre is a library I use all the time and while MVT isn't something I have any complaints about this will still be a big upgrade.
maxxen•3h ago
This is cool. My only worry is that the implementation complexity will prevent widespread adoption outside of maplibre. Although getting write support upstreamed into PostGIS might be all thats needed to make sure it trickles down into all the different tile servers. MVT is not the most efficient, but everything speaks protobuf and you can hack together a parser in an afternoon.

I've experimented a lot with vectorized encodings of geometries in DuckDB-spatial using the different nested types. You definitely do get very good compression out of the box if you already support a bunch of specialized lightweight compression algorithms. Simpler geometric properties are very fast to compute (e.g. area, length), but for anything more complex you usually need to do some pre-processing or conversion into an intermediate data structure (like creating a line-segment index for intersection checks, or a node graph for clipping) which dominates the processing time anyway. The cost of materializing the columnar format into a row-wise format and back again when doing joins or sorting is absolutely brutal on performance too, compared to just keeping geometries as serialized blobs that are easy to slice and memcpy.

That said, I do expect columnar encoding to work really well for rendering in the browser, where transfer speed is the big bottleneck. The paper mentions Arrow as an inspiration, but I wonder why the format isn't just based on (compressed) arrow in its entirety? Im not super up to speed on the arrow ecosystem but I know there's a couple of query engines that don't just use it internally on the CPU, but also to execute on the GPU. If you are going to decode and send over the data to WebGL, you might as well do the filtering/expression evaluation there too no? (and leverage the existing techniques/code/interop in the arrow world)

jandrewrogers•44m ago
> My only worry is that the implementation complexity will prevent widespread adoption outside of maplibre.

I don't think the implementation is that complex. You may be underestimating the extent to which heavy users of mapping data already write their own informal bug-ridden versions of the transforms and representations standardized in this tile format. In fact, it is not uncommon for companies to actually be using multiple slightly incompatible implementations of these under the hood. The practical effect could be to actually reduce the amount of code being written to do this, never mind the compatibility bugs it would address.

A key caveat is that this format is explicitly optimized for visualization. It is not optimized for efficient geospatial or spatiotemporal analytics, which may not even have visualizable output in this sense. Formats optimized for analysis make a very different set of tradeoffs.

ajd555•2h ago
This is such great news, and these are very notable speedups (decoding and filtering)! I'm looking to host our own tiles, and this would not only reduce file size but also improve performance on our maps (https://dash.hudsonshipping.co could use a speedup in loading the tiles, though we are ever grateful to OpenFreeMap). Will keep an eye out for MapLibre news regarding the JS release of this.
dvdkon•2h ago
This looks nice. While I don't think tile download and decoding is a bottleneck for web maps, the efficient in-memory representation might help elsewhere as well.

Maybe someone here will know: What is MapLibre GL JS' current in-memory representation like? I know Tangram JS decodes MVT tiles to GeoJSON, but only because it showed up on a memory profiler :)

butz•1h ago
Is this something similar to Mapsforge map format?
underbluewaters•10m ago
Very interested to see what improved runtime performance looks like when this is implemented in MapLibre GL JS. I thought this effort was just focused on reducing tile size (meh). I run into runtime performance issues all the time when visualizing scientific data layers in mapbox gl js. If you build a "traditional" web map portal around MVT with lots of layers people can toggle this can become an issue. Still better than other options, but I'm excited to see what a new format with tight gpu renderer support could achieve.

Show HN: I was curious about spherical helix, ended up making this visualization

https://visualrambling.space/moving-objects-in-3d/
268•damarberlari•2h ago•59 comments

Gemma 3 270M re-implemented in pure PyTorch for local tinkering

https://github.com/rasbt/LLMs-from-scratch/tree/main/ch05/12_gemma3
120•ModelForge•2h ago•14 comments

Closer to the Metal: Leaving Playwright for CDP

https://browser-use.com/posts/playwright-to-cdp
45•gregpr07•1h ago•17 comments

OPA maintainers and Styra employees hired by Apple

https://blog.openpolicyagent.org/note-from-teemu-tim-and-torin-to-the-open-policy-agent-community-2dbbfe494371
24•crcsmnky•1h ago•4 comments

Improvements to OCaml code editing: the basics of a refactor engine

https://tarides.com/blog/2025-08-20-internship-report-refactoring-tools-coming-to-merlin/
55•nukifw•3h ago•12 comments

Show HN: Luminal – Open-source, search-based GPU compiler

https://github.com/luminal-ai/luminal
23•jafioti•57m ago•1 comments

Tidewave Web: in-browser coding agent for Rails and Phoenix

https://tidewave.ai/blog/tidewave-web-phoenix-rails
218•kieloo•7h ago•39 comments

Launch HN: Channel3 (YC S25) – A database of every product on the internet

6•glawrence13•1h ago•0 comments

Digg.com Is Back

https://www.digg.com/
29•thatgerhard•23m ago•15 comments

AGENTS.md – Open format for guiding coding agents

https://agents.md/
724•ghuntley•16h ago•345 comments

Show HN: Anchor Relay – A faster, easier way to get Let's Encrypt certificates

https://anchor.dev/relay
7•geemus•45m ago•7 comments

How to Think About GPUs

https://jax-ml.github.io/scaling-book/gpus/
286•alphabetting•1d ago•82 comments

MapLibre Tile: A next generation geospatial format optimized for rendering

https://arxiv.org/abs/2508.10791
102•mtremmel•2d ago•11 comments

Show HN: Strudel Flow, a pattern sequencer built with Strudel and React Flow

https://github.com/xyflow/strudel-flow
18•moklick•2d ago•1 comments

The Block Stacking Problem

https://sites.pitt.edu/~jdnorton/Goodies/block_stacking/block_stacking.html
88•lisper•2d ago•21 comments

Show HN: Typed-arrow – compile‑time Arrow schemas for Rust

https://github.com/tonbo-io/typed-arrow
27•ethegwo•2d ago•3 comments

Sequoia Backs Zed's Vision for Collaborative Coding

https://zed.dev/blog/sequoia-backs-zed
80•vquemener•4h ago•40 comments

AWS in 2025: The Stuff You Think You Know That's Now Wrong

https://www.lastweekinaws.com/blog/aws-in-2025-the-stuff-you-think-you-know-thats-now-wrong/
48•keithly•1h ago•24 comments

Phone Searches at the US Border Hit a Record High

https://www.wired.com/story/phone-searches-at-the-us-border-hit-a-record-high/
13•mikece•39m ago•1 comments

How to Draw a Space Invader

https://muffinman.io/blog/invaders/
458•abdusco•18h ago•49 comments

Mirrorshades: The Cyberpunk Anthology (1986)

https://www.rudyrucker.com/mirrorshades/HTML/
83•keepamovin•8h ago•43 comments

Ask HN: Why does the US Visa application website do a port-scan of my network?

427•mbix77•10h ago•187 comments

Modern CI is too complex and misdirected (2021)

https://gregoryszorc.com/blog/2021/04/07/modern-ci-is-too-complex-and-misdirected/
169•thundergolfer•13h ago•154 comments

Copilot broke audit logs, but Microsoft won't tell customers

https://pistachioapp.com/blog/copilot-broke-your-audit-log
702•Sayrus•16h ago•260 comments

How we exploited CodeRabbit: From simple PR to RCE and write access on 1M repos

https://research.kudelskisecurity.com/2025/08/19/how-we-exploited-coderabbit-from-a-simple-pr-to-rce-and-write-access-on-1m-repositories/
655•spiridow•1d ago•217 comments

The End of Handwriting

https://www.wired.com/story/the-end-of-handwriting/
107•beardyw•2d ago•242 comments

D2 (text to diagram tool) now supports ASCII renders

https://d2lang.com/blog/ascii/
410•alixanderwang•22h ago•70 comments

Tiny microbe challenges the definition of cellular life

https://nautil.us/a-rogue-new-life-form-1232095/
135•jnord•17h ago•67 comments

Fast and observable background job processing for .NET

https://github.com/mikasjp/BusyBee
52•mikasjp•2d ago•20 comments

Show HN: Project management system for Claude Code

https://github.com/automazeio/ccpm
118•aroussi•6h ago•74 comments