Py Leeds Poster

Last Commit Repo Size License

Python Version Library Styling Environment Manager Data Source Output Format

An automated Python pipeline that extracts live geographic vector nodes from the OpenStreetMap API and compiles a complete, print-ready art gallery of Leeds, England.

By mapping the city's complex highway rings, pedestrian grids, and the River Aire across a massive 10,000-meter radius, this project batch-renders 17 distinct, high-resolution aesthetic map designs completely automated via a single script loop.


πŸ“ΈScreenshots


✨ Features


🎨 Included Gallery Themes

The pipeline loops sequentially through the following 17 official style configurations:

Warm / Earth Tones Dark Mode / Cyber Cool / Stark Minimal
🏺 terracotta πŸŽ›οΈ noir πŸ“ blueprint
πŸͺ΅ warm_beige 🌌 midnight_blue 🧊 monochrome_blue
πŸ‚ autumn ⚑ neon_cyberpunk 🏁 contrast_zones
🌸 pastel_dream πŸ–‹οΈ japanese_ink 🏳️ minimal_stark
🌲 forest / emerald 🌊 ocean / sunset πŸ—οΈ copper_patina / gradient_roads

πŸš€ Getting Started

Prerequisites

This project utilizes uv by Astral for lighting-fast Python environment and dependency management. If you don't have it installed yet, run this in your terminal:

# Windows PowerShell
powershell -ExecutionPolicy ByPass -c "irm [https://astral.sh/uv/install.ps1](https://astral.sh/uv/install.ps1) | iex"

Installation

Clone or open your project repository folder:

cd C:\Users\Admin\Desktop\code\py_leeds_poster

Initialize the environment and sync dependencies:

uv init --python ">=3.12"
uv add maptoposter<=0.5.0

Running the Pipeline

To execute the batch process and start your local print shop, spin up the main control script:

uv run generate_leeds.py

Note: On its very first pass, the script will pause on the terracotta theme while it queries OpenStreetMap servers for Leeds' vector infrastructure. Once the graph is cached locally, your computer will quickly generate the remaining 16 layouts.


πŸ“‚ Project Architecture

py_leeds_poster/
β”œβ”€β”€ .venv/                 # Isolated environment containing maptoposter-cli.exe
β”œβ”€β”€ posters/               # Auto-generated destination folder for your PNGs & JSON metadata
β”œβ”€β”€ generate_leeds.py      # Core automation loop control script
β”œβ”€β”€ pyproject.toml         # Environment lock configuration
└── README.md              # Documentation

πŸ›£οΈ Roadmap Features


πŸ“œ Acknowledgments