1 of 36

Kelsey Taylor, Lead Cartographer + Designer

June 20, 2025

Maintaining a family of related map styles

Efficient cartography with Stamen’s style builder

2 of 36

3 of 36

Clients

Stamen helps our clients produce about 50 distinct projects per year, many with long-term partners. We’ve worked with 100s of unique clients over Stamen’s history, everywhere around the globe.

4 of 36

“We need a map style for our app”

5 of 36

“We need a map style for our app”

“We actually need a light and dark mode of the map”

6 of 36

“We need a map style for our app”

“We actually need a light and dark mode of the map”

“What if we let the user select what language they want the map in”

7 of 36

“We need a map style for our app”

“We actually need a light and dark mode of the map”

“What if we let the user select what language they want the map in”

“Wouldn’t it be cool if we could offer HERE data in Europe but OSM everywhere else”

8 of 36

You can see how quickly one map becomes dozens of maps…

9 of 36

10 of 36

How do we tackle the tesseract?

11 of 36

Build system 101

12 of 36

Why did we build something?

Merge conflicts with multiple contributors

Found many inconsistencies

Break up work between collaborators

13 of 36

Why did we build something?

How do we scale up our work without magnifying these problems?

Merge conflicts with multiple contributors

Found many inconsistencies

Break up work between collaborators

14 of 36

Build system 101

15 of 36

Everything lives in a template

Layers are the layers in your stylesheet

Variables pull out bits of layers that are repeated across styles or that change together across styles

Variants are the parameters that differentiate your output styles

16 of 36

V A R I A N T

17 of 36

L A Y E R

V A R I A N T

18 of 36

V A R I A N T

L A Y E R

V A R I A B L E

19 of 36

What does the build system enable us to do?

20 of 36

From a technical perspective

Maintain several related styles

Allow easy differentiation between styles

Allow for different data sources

Avoid inconsistencies between styles

21 of 36

Maintain several related styles

x basemap

y basemap

z basemap

22 of 36

Allow easy differentiation between styles

“Default” political view

India political view

23 of 36

Allow for different data sources

24 of 36

Avoid inconsistencies between styles

25 of 36

From a process perspective

Break work down into a componentized, code-based system that is easy for cartographers to use

Make it easy to review work without merge conflicts

Implement our larger suite of tools

26 of 36

Break work down into a componentized, code-based system that is easy for cartographers to use

27 of 36

Make it easy to review work without merge conflicts

Kelsey is working on the color palette for the light reference map

Alan is working on improvements to admin boundaries across all styles

  • Edits to some layer template files

28 of 36

Implement our larger suite of tools

Route simulator

Maperture

Figmasset

Map GL Style Diff

Chartographer

viewer

icon design

interactive legend

preview experience

view diff

29 of 36

R O U T E S I M U L A T O R

30 of 36

M A P E R T U R E

31 of 36

Have we used the style builder for client work?

32 of 36

A few client examples

Client A (complex)

  • 2 color palettes (light + dark)
  • Support 2 devices (in-vehicle + mobile)
  • Each style in 3 data sources (global + regional 1 + regional 2)
  • Support 22 sets of political views
  • Support 15 languages

Client B (simple)

  • 3 color palettes (light + dark + hybrid)
  • Support 2 modes/use cases (explore + navigate)
  • All styles support 2 languages

33 of 36

5 styles

  • Standard (l/d)
  • Monochrome (l/d)
  • Hybrid
  • Logistics (l/d)
  • Terrain

Each style in 3 data sources (OpenData, HERE, Grab)

Variants to support 22 different sets of political views

212 styles in total

Amazon Location Service

34 of 36

6 styles

  • Standard (l/d)
  • Monochrome (l/d)
  • Hybrid
  • Logistics (l/d)
  • Terrain (l/d)
  • Transit (l/d)

Each style in 3 data sources (OpenData, HERE, Grab)

Variants to support 22 different sets of political views

282 styles in total

Amazon Location Service

35 of 36

36 of 36

Let us know if we can help with a project!

kelsey@stamen.com