
MapToPoster JS is a professional-grade, client-side web application designed to help you generate a custom Map To Poster with ease. Whether you're looking to create minimalist city art or a vibrant geographic keepsake, this tool allows you to search for any location in the world and transform it into a stunning Map To Poster piece with fully customizable themes, layouts, and high-fidelity export options. As a versatile Map To Poster generator, the application focuses on high-resolution output suitable for large-format printing, making it the perfect tool for creating unique wall art or personalized gifts.

MapToPoster JS offers two distinct ways to style your maps:
Based on high-quality raster tiles from established providers: - Minimal White: Clean and modern (CartoDB Positron). - Midnight Dark: Sleek dark mode (CartoDB Dark Matter). - Classic Street: Standard OpenStreetMap cartography. - Modern Voyager: Colorful and detailed (CartoDB Voyager). - Satellite View: High-resolution imagery (Esri World Imagery).
Hand-crafted vector styles with procedural colors: - Arctic Frost: Pale blues and crisp whites. - Aurora Glow: Iridescent greens and pinks. - Cyber Glitch: Neon accents for a digital look. - Paper Heritage: Vintage sepia tones and inked roads. - Volcanic Ash: Deep charcoal with glowing ember accents. - Blueprint Classic: Technical cyanotype style for an architectural feel. - ...and many more unique themes like Retro Synth, Charcoal Sketch, and Sakura Bloom.
You can easily add your own artistic themes by editing src/core/artistic-themes.js:
artistic-themes.js.artisticThemes export:your_theme_key: {
name: "Your Theme Name",
description: "Brief description of the style",
bg: "#HEXCODE",
text: "#HEXCODE",
water: "#HEXCODE",
parks: "#HEXCODE",
road_motorway: "#HEXCODE",
road_primary: "#HEXCODE",
road_secondary: "#HEXCODE",
road_default: "#HEXCODE"
}
The application will automatically pick up the new theme and display it in the selection menu.
Follow these steps to get a local copy up and running.
Clone the repository
bash
git clone https://github.com/dimartarmizi/map-to-poster.git
cd map-to-poster
Install dependencies
bash
npm install
Start development server
bash
npm run dev
The app will be available at http://localhost:5173.
Build for production
bash
npm run build
Optimized files will be generated in the dist/ folder.
This project is ready to run as a lightweight Docker container using a multi-stage build:
dist/.docker build -t map-to-poster .
docker run -d -p 8080:80 --name map-to-poster map-to-poster
Then open http://localhost:8080.
After pulling new changes, rebuild and recreate the container:
docker build -t map-to-poster .
docker rm -f map-to-poster
docker run -d -p 8080:80 --name map-to-poster map-to-poster
Dockerfile — multi-stage production image.dockerignore — keeps the build context smalldocker/nginx.conf — Nginx config with SPA fallback to index.htmllocalStorage.html2canvas and the onclone callback.If you have any questions, suggestions, or just want to reach out, feel free to contact me at dimartarmizi@gmail.com.
This project is open-source and available under the MIT License.
$ claude mcp add map-to-poster \
-- python -m otcore.mcp_server <graph>