# Diagrams, static map renderer

**URL:** <https://discourse.haskell.org/t/diagrams-static-map-renderer/12855>\
**Category:** Show and Tell\
**Created:** [August 28, 2025, 5:37pm UTC](https://discourse.haskell.org/t/diagrams-static-map-renderer/12855 "2025-08-28T17:37:07Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![flex99](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/flex99/32/4265_2.png) [@flex99](https://discourse.haskell.org/u/flex99)\
**Post date:** [August 28, 2025, 5:37pm UTC](https://discourse.haskell.org/t/diagrams-static-map-renderer/12855/1 "2025-08-28T17:37:07Z")

</div>

I’ve been on a journey learning Haskell, and what better way to practice than by starting a little project of my own? Since I’m particularly interested in maps, I thought it would be nice to develop a map renderer using Haskell’s wonderful diagrams library.

The project is nowhere near finished—and probably never will be—but I still wanted to share it to see what others think and to get some feedback. It basically decodes vector tiles, interprets style specs (e.g., from MapTiler), and renders a single tile while applying the style (at least partially).

The development experience has been really nice, and it has introduced me to tons of concepts like lenses, parser combinators, GADTs, and more.

[Smapr](https://github.com/flexv99/smapr)

---

<div class="post-metadata">

**Author:** ![byorgey](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/byorgey/32/1525_2.png) [@byorgey](https://discourse.haskell.org/u/byorgey)\
**Post date:** [August 29, 2025, 11:48am UTC](https://discourse.haskell.org/t/diagrams-static-map-renderer/12855/2 "2025-08-29T11:48:32Z")

</div>

Cool! Any screenshots you could share?

---

<div class="post-metadata">

**Author:** ![flex99](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/flex99/32/4265_2.png) [@flex99](https://discourse.haskell.org/u/flex99)\
**Post date:** [August 29, 2025, 3:28pm UTC](https://discourse.haskell.org/t/diagrams-static-map-renderer/12855/3 "2025-08-29T15:28:02Z")

</div>

![2025-08-29_15:24:00](https://us1.discourse-cdn.com/flex002/uploads/haskell/original/2X/0/0b35dc660a0e309c7d13719bf3fd8feeae5b3949.svg)

Sure! Here’s an example of MapTiler’s [Dataviz](https://www.maptiler.com/maps/#style=dataviz&lang=auto&mode=2d&position=14.73/45.43656/12.32292) style
