Super excited for your project. I have been using map tiles from Mapbox, MapTiler, OSM Buildings for my project and am coming to the point that I need to merge elevation data with building height data in order to cast realistic shadows across the earth. Unfortunately elevation data and building data come from two different tile sets from two different tile providers and it's a lot of download/processing overhead to merge the two data sources. I need to make my own tiles!<p>I spent part of today on the OSM wiki trying to wrap my head around Mapnik, how tiles are generated, how I am going to host this cheaply because my project is non-commercial, and then the HN gods smiled on me. Thank you for taking this on and I'm coming along for this journey!
This is very nice! Happy to see a few of my libraries in the dependencies :)<p>Also check out <a href="https://github.com/kothic/kothic-js" rel="nofollow">https://github.com/kothic/kothic-js</a>, an older but similar attempt at making a full-fledged map renderer using 2D Canvas. It has a pretty good label rendering in particular which you might find useful.
This is really interesting to me. I do a lot of mapping of natural surface single track trails (for hiking and mountain biking) along the way be sure to properly name things, add intersection markers, and create relations (routes and superroutes) to document the systems.<p>The biggest downside thus far is a good way of displaying the data. mtb.waymarkedtrails.org gets close, but I'd really like something that displays relations in the specified color, has sane intersection markers, etc.<p>I feel like there should be something out there which effectively lets me design a style sheet and then apply it to a map which I embed somewhere (maybe even in an app).<p>This... feels like it? Or if not this, can any of you recommend another system?<p>Ideally I'd love something I can self-host. I tried getting a copy of waymarkedtrails going and then modifying that, but it's a bit too specialized and I kept running into quirks getting the toolchain set up.<p>EDIT: Looks like this might not include the highway=path data that I need, much relations. Alas.
Really interesting project/product! It's really nice to see new ways of rendering OSM data, and alternative map services.<p>I am developing another way to run your own map server (without mapnik!) from a low-end computer (<a href="https://github.com/jamesrr39/ownmap-app" rel="nofollow">https://github.com/jamesrr39/ownmap-app</a> in case you're interested), but a little bit different to you in that I'm currently focusing on rendering raster tiles. I'm really happy I saw this thread, however, I hadn't heard of the OSM Express, MBTiles or PMTiles formats before and was/am rolling my own format, so it's really interesting looking at some ideas from these.<p>Thanks again for sharing your project!
Does anyone have a really good (maybe illustrated?) guide/short reference to the world of GIS? Every time I see GIS stuff mentioned the problem space itself, solution jargon, and various movements in the ecosystem (projects being unsupported, stewards/companies changing etc) always throws me for a loop.<p>It's certainly the case that I just haven't built enough mapping-related software to be comfortable but if there's a resource out there that's like "baby's first GIS application" I'd love to read through it and try to ram the concepts into my gray matter again for the day when I do work on one.
Question that maybe HN can answer:<p>If I want to build a free open-source web application with a map view that can be annotated, works on mobile etc and uses Open Street Map data, what are the best options right now?
Also, there is this comprehensive resource available on OSM.<p><a href="https://switch2osm.org/" rel="nofollow">https://switch2osm.org/</a>
Very interesting, I'm currently using Google My Maps as a dead-simple custom mapping tool. I'm using it to collect layers of information as I conduct a nationwide housing search. It would be great if there were a solution that was as simple to get started with as My Maps but also had the flexibility to easily add custom data layers programmatically.
> Existing formats like MBTiles are based on SQLite. This limits the ability to self-host maps to those confident running a server in production.<p>Is that comical, or is there a deeper meaning I don't understand?
@bdon Awesome! The geospatial industry is in need of simpler tooling for specific jobs such as generating tilesets.<p>Currently complex tools such as QGIS and GDAL do everything, but the learning curve is very steep.<p>An addon you might consider a feature to drop an image (and adjust it to fit) over the OSM data to generate a XYZ tilesets directly on the customer AWS S3 (or equivalent storage).<p>This might be a good way to monetise your offering... I know my customers would buy it.
Is the author around?<p>Curiously, the editor does not render (well, it renders a black screen) in Firefox 78.9.0. I see this error in devtools:<p><pre><code> Uncaught SyntaxError: expected expression, got '=' protomaps.min.js:1:52669
On props update af913d4d.0fa8ea22.js:1:7975 ReferenceError: protomaps is not defined
</code></pre>
(Chromium is fine)
On the off chance the author is still hanging around here:<p>Do you mean it when you say on the blog that OSMX is faster than a relational database? e.g. faster than PostGIS.<p>And I presume you mean because of the up front cost of conversion?
In the past I made a map of train lines in and around Prague, which required quite a complex stack, since the information I wanted was in relations. How does Protomaps deal with relations?
Got the demo up and running.<p>I've been using leaflet for my map tiling and it <i>just works</i>. The advantage of promomaps being offline is great.<p>So, now... how does one add their own POI's, routes, polygons??
As it was said<p>> "In about five minutes, you can select any area in the world and get a self-contained map that runs locally, offline or serverlessly on S3 - check out the Getting Started guide."<p>5 mins? It took me a night to build the map system using openstreetmap in the original way