Project Overview
| Role: Developer | Type: Open Source | GitHub Repository |
The Challenge
Generate print-ready, publication-quality city map posters from code — with full control over style, typography, and output format — for any city in the world.
Solution

A Python CLI tool that fetches OpenStreetMap data via OSMnx and renders layered map artwork:
- 17 built-in themes — noir, blueprint, neon cyberpunk, japanese ink, terracotta, sunset, and more
- Multilingual typography — Google Fonts integration for non-Latin scripts (Japanese, Korean, Arabic, Thai, Chinese)
- Print-ready output — A0–A4 paper presets, up to 1200 DPI, in PNG/SVG/PDF formats
- Layered rendering — Background, water, green areas, streets, buildings, and labels composed independently
- Batch mode — Generate all 17 theme variants in one command
Usage examples:
# Basic poster
python create_map_poster.py -c "Paris" -C "France" -t sunset
# Japanese typography
python create_map_poster.py -c "Tokyo" -C "Japan" -dc "東京" --font-family "Noto Sans JP"
# Print-ready A2 at 600 DPI
python create_map_poster.py -c "London" -C "UK" -p A2 --dpi 600
Technical Stack
Python OSMnx Matplotlib Pillow OpenStreetMap Google Fonts SVG PDF
Industry Relevance
Demonstrates geospatial data processing, automated rendering pipelines, configurable output generation, and CLI design. The pattern — ingest external data, apply transformations, produce publication-ready output — applies directly to report generation, data visualization tools, and ETL pipelines.