TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Adventures in mapmaking: the search for grayscale tiles

35 pointsby przem8k11 months ago

7 comments

edg500011 months ago
It's quite doable to run your own tileserver. You will have full control over the colors, and you can hide/show things to create a more minimalist map. With some tricks you can 2x the resolution, making it look better than OSM on modern high-DPI screens. Tile generation is quite CPU heavy though, so you may have to pre-generate tiles ideally. So it is not that easy actually.
donalhunt11 months ago
In case you haven&#x27;t already read the TOS for the OpenStreetMap tile servers, they are here: <a href="https:&#x2F;&#x2F;operations.osmfoundation.org&#x2F;policies&#x2F;tiles&#x2F;" rel="nofollow">https:&#x2F;&#x2F;operations.osmfoundation.org&#x2F;policies&#x2F;tiles&#x2F;</a>
mdorazio11 months ago
If going with client-side CSS rendering, I&#x27;d also play with CSS filter functions like contrast. The OSM tiles have always looked too low on contrast for me and thus difficult to read. Making them grayscale makes it worse.
zeke11 months ago
To not load openstreetmap&#x27;s servers, you could pull the tiles to your server and host them. Then only grab a tile from OSM when you are missing one.<p>This would also let you set the grayscale on the tiles using imagemagick convert.<p>Neat project and thanks for the write up.
wipfli11 months ago
The Protomaps basemap has also a grayscale style. The grayscale map looks like this: <a href="https:&#x2F;&#x2F;maps.protomaps.com&#x2F;#map=5.09&#x2F;47.14&#x2F;8.64&amp;theme=grayscale" rel="nofollow">https:&#x2F;&#x2F;maps.protomaps.com&#x2F;#map=5.09&#x2F;47.14&#x2F;8.64&amp;theme=graysc...</a><p>Instructions for self-hosting a PMTiles file are available here: <a href="https:&#x2F;&#x2F;docs.protomaps.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;docs.protomaps.com&#x2F;</a>.
maptime11 months ago
Love this, the pure CSS option is really elegant<p>Another option would be self hosting vector tiles(or finding the most generous free tier vector tiles) and using a custom grey scale styling that you could tweak to your needs.<p>Maputnik is a great tool for building custom vector stylesheets. (1)<p>1. <a href="https:&#x2F;&#x2F;maputnik.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;maputnik.github.io&#x2F;</a>
cdrini11 months ago
Much ado about a single line of CSS :P I thought this would lead to something a little more interesting, like dynamically modifying&#x2F;drawing the elements of the map or something. CSS filter is the way to go; and I&#x27;m glad to see that applying the filter on-the-fly client-side was performant!
评论 #40897520 未加载