Skip to content

baditaflorin/osm-poster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OSM Poster

Beautiful, custom-styled map posters from OpenStreetMap, generated entirely in your browser. No backend, no API keys, no signups.

Live demo: https://baditaflorin.github.io/osm-poster/

Features

  • 11 hand-designed style presets (Blueprint, Vintage, Parchment, Tron, …)
  • 12 toggleable OSM data layers (water, rivers, parks, greenery, buildings, industrial, railways, paths, airports, place names, streets, POIs)
  • 9-swatch palette with live color picking, layer-aware halo logic
  • Map rotation + 3D pitch (auto-extrudes buildings when tilted)
  • Center marker (pin / heart / star / dot) — anchored geographically
  • GPX route overlay (drag a .gpx file onto the map)
  • Compass rose, scale bar, paper grain / halftone overlays
  • 4 frame border styles, 6 aspect ratios (Portrait / Square / Landscape / Story / A4 / Banner)
  • Commemorative mode for weddings, anniversaries, new homes
  • Seedable randomize for reproducible palettes
  • Export: PNG, SVG, or print-ready PDF in screen / A2 / A3 / A4 / 4K sizes
  • Shareable URL (state encoded in hash) + localStorage autosave
  • Undo / redo history (⌘Z / ⌘⇧Z)
  • Keyboard shortcuts (R randomize, E export, [ ] cycle presets, M toggle marker, ? help, F fullscreen)

How it works

We author the MapLibre style JSON ourselves — every layer, color, road weight, and label is generated in the browser from your state. The map data (water polygons, road lines, building footprints, POIs) comes from OpenFreeMap's free vector tiles; everything visual is ours.

See docs/ADRS.md for the architectural decisions behind each feature.

Stack

Local development

Single static HTML file. Serve with anything:

python3 -m http.server 8000

License

This project is MIT-licensed — see LICENSE. Use it, fork it, embed it, sell posters with it, ship a derivative, no permission needed beyond keeping the copyright notice. It is OSI-approved open source in the strictest sense: no copyleft, no field-of-use restriction, no patent gotcha.

The license covers this codebase. The map data shown by the app is © OpenStreetMap contributors under the ODbL, and the vector tiles are served by OpenFreeMap under their own terms — those licenses apply to the rendered content, not to this app's source.

Credits

Map data © OpenStreetMap contributors. Vector tiles by OpenFreeMap.

About

Beautiful map posters from OpenStreetMap, generated in your browser. No backend, no API keys.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors