Skip to content
andrew.dunn.dev

Patinate

Source Live demo

Render Strava activity into stylized heatmap posters and inline SVG. The patina builds where you ride often: overlapping low-alpha strokes accumulate into brighter color the way actual patina builds on metal.

Patinate's GitLab Pages deployment showing a Grand Rapids cycle heatmap rendered in the cycle_heat theme, framed as a printed plate with technical caption metadata

Single Rust binary, four themes baked in (noir_heat, blueprint_heat, warm_beige, cycle_heat), custom themes load from a --themes-dir. OpenStreetMap basemap, SQLite activity cache, render to SVG. Real polyline-circle privacy obfuscation runs before render so the inside-circle segment never reaches the output; --anonymize strips identifying attributes for public publication.

NETWORKONE RUST BINARYbasemap—anonymizeSOURCESStrava + OSMrides + basemapSTORESQLite cacheride activityPRIVACYobfuscationcircle trimRENDERrenderfour themesOUTPUTSVG plateposter or hero
Patinate turns Strava rides and an OpenStreetMap basemap into a themed SVG plate, trimming every track inside the privacy circle first and stripping identifying data on --anonymize.

The hero on cycle.dunn.dev is patinate’s cycle_heat output. MIT licensed.