{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreidf4ryj4wtsexwoi2xms6yes36i6nq6y5ki6uqi6juq2mziw7ggwu",
"uri": "at://did:plc:4tuge3k3comfj4nfvqnwkemn/app.bsky.feed.post/3mkcp2xam2ew2"
},
"path": "/user/Evgeny%20Arbatov/diary/408569",
"publishedAt": "2026-04-24T16:40:54.000Z",
"site": "https://www.openstreetmap.org",
"textContent": "I was interested in finding walkable areas in a city I had never visited before. After using OpenClaw bot to summarize my JSON files, I thought I could do the same for OSM-based metrics.\n\nI started by generating an OSM extract with a 5km radius from my hotel. I then extracted the geometry and tags for every way, park, building, and tourist attraction in this area. I normalized the raw data into a handful of generic classes like “Food & Café” and “Nature / Quiet.”\n\nI then assigned each way and point of interest to an H3 hexagon. I calculated aggregate metrics for each hexagon, like the length of roads and the area taken up by parks and water. Then I simply fed the metrics for the hexagon to Ollama with Mistral Nemo, asking it to generate a short one-sentence vibe of a place based on the collected metrics and label it as positive, negative, or mixed.\n\nTo visualize the results, I created a KML file and imported it into Google My Maps. I had to iterate on the LLM prompts, as there are a lot of fields in the generated JSON and the LLM struggles to interpret what the numbers mean.\n\nI also discovered a number of bugs in how I calculate features per H3 hexagon, but I eventually arrived at a reasonable overlay showing how walkable each area is. It’s not perfect — partly because OSM data is incomplete for the area I picked, and partly because I need to make my prompts more specific.\n\nThe recommendations are generic, but they add an extra dimension to the map. I think this is really exciting because you can create any perspective you like on OSM data with your own overlays for driving, finding a house, or finding a place to eat.",
"title": "Creating Map Overlays with Ollama"
}