Hacker News new | ask | show | jobs
by bchapuis 1111 days ago
Hi, author here, I just noticed that Baremaps was submitted to HN. Our demo runs on PostGIS, and I'm surprised it's holding up under the load. I'm happy to answer questions.

Here is the fullscreen demonstration for those who are interested. https://demo.baremaps.com/

3 comments

As a geographer who migrated to mobile robotics and web mapping, I’ve found that there is a lack of “serious” web spatial analysis tools for in-browser work. Think the geotoolbox you get in ArcGIS or QGIS for building analytical processing pipelines for raster and vector datasets, particularly from web sources.

Lately I’ve revisited the idea and found that with wasm, SharedArrayBuffer for parallelism, and more maturing libraries, it may be possible to provide a much richer set of analytical tools.

Is this an idea you’ve explored? This would be my “if I won the lottery, what would I work on?” project.

GEOS will be available in WASM sooner or later (if it isn’t already, and if the licence works for you), rust-geo (under active development, I’m one of a few core contributors who work on it) is available compiled to WASM today (you can see a demo from a core contributor at rgis.app). Those are both vector only. For a more mature product that “only” leverages JS, placemark is the state of the art, and is amazing.

I’m not a raster or EO person so I can’t speak to GDAL’s availability, but I’m dubious that the browser is a good interface for that kind of work, or for a full GIS more generally.

Watch out for software license conflicts moving the code to WASM. Some code can run on a server without triggering distribution clauses. WASM runs on the client and may count as distribution.

Assume Apache Baremaps uses an Apache license, it might be more wasm-friendly than most GIS software…

Have you tried Turf.js? It goes pretty far when it comes to in-browser spatial analysis. Baremaps is more about the server side of web mapping. We currently use MapLibre for rendering the vector tiles we produce in the browser and plan to support 3d tiles in the future.
I should try Turf again. The core problem last time was that it fundamentally does not support “Simple”/ Euclidean coordinate systems. When I want to do analysis on flatland indoor maps, it does all the math wrong.
If you get a chance, it would be neat to see a brief summary article added to your website that talks about how much traffic and how Baremaps + PostGIS handled it. Info like that can be hard to come by when evaluating GIS frameworks and is really helpful!
Unfortunately, I don't gather statistics on the demonstration server. I believe that the in-memory caffeine cache (https://github.com/ben-manes/caffeine) saved me.
What is the library being used to display the map?
MapLibre (https://maplibre.org/) is used to render the map.
Thanks!