I Built a Map Generator Because I Like Maps

I’ve been slightly obsessed with maps for years. If I had the space, my entire home would be covered in 19th-century maps.

So I built a small map generator. Not because I found a gap in the market, and not because I have a plan to turn it into a business. I wanted to make a tool that turns a place I know into something I would actually keep.

A small tool with a clear job

AwesomeMaps takes a location and turns it into a poster-style map. You choose the visual preset, crop shape, radius, road width, colours, and optional map details. Then you export the result as SVG or a 4096 × 4096 PNG.

That is the whole idea. There is no account system, dashboard, social layer, or long setup flow. The tool has a small number of decisions because the output should arrive quickly.

The map geometry comes from OpenStreetMap. The app uses Nominatim for geocoding and vector tiles from VersaTiles for the map data, with small API functions between the browser and those services. The poster is drawn as SVG in the browser, and the PNG export rasterises that same artwork.

I wanted to build the thing, not plan it

The project was also an excuse to work differently. I could have spent weeks deciding what a map generator might become, but the more useful question was smaller: can I make one that feels good to use?

That changed the decisions. Vite and vanilla JavaScript were enough. The renderer only had to handle the map layers, crop shapes, colours, and a few optional details. The interface did not need to explain a large system because the system was deliberately small.

A location field, a preset, a crop shape, a couple of sliders, and an export button are enough to turn the idea into something concrete. Once the result exists in the browser, it becomes much easier to see what is missing and what would only be another feature.

The useful limit

Small side projects are easy to overbuild. A map generator could quickly grow into saved collections, user accounts, sharing, print orders, recommendations, or a marketplace. None of those things improves the first question: can I turn a place into a map I like?

Keeping that question visible was more useful than adding another layer to the product. The project works because it stops at the point where the map is ready to export.

I still want a wall full of old maps. For now, I can make a new one whenever I find a place worth keeping.

Try AwesomeMaps →

Back to insights →

Source

AwesomeMaps is an independent side project by Diego Ramos Retamal. Map data © OpenStreetMap contributors.

Back to insights →