City Map Poster - fotojockovic.com/citymap ========================================== Makes a minimalist map poster of any place. The map is drawn in the browser from vector map data; nothing the user makes is uploaded. To show the map, the browser loads vector tiles from OpenFreeMap; address searches and city / country outlines are looked up on Nominatim (OpenStreetMap) only when the user asks for them. Our own work: the poster designs, layout and renderer (display list -> canvas / SVG / PDF), the map styles and drawing order, the tile store and the preview / gesture renderer, the PDF and SVG writers (with transparency groups), the Rust kernel in src-rs/ (vector tile decoder for the OpenMapTiles schema, streaming PNG encoder, Milky Way reprojection; MIT), the offline place search, the room preview, the UI, texts and translations. Parts are shared with our Star Map (fotojockovic.com/stars). Everything else: MAP DATA AND SERVICES (fetched at run time, not shipped) 1. OpenStreetMap data - (c) OpenStreetMap contributors, Open Database License (ODbL) 1.0, https://www.openstreetmap.org/copyright . Every poster carries the line "(c) OpenStreetMap contributors ยท (c) OpenMapTiles"; the app shows the attribution permanently. A printed or exported poster is a "Produced Work" under the ODbL: it may be printed, sold and given away with that credit. 2. Vector tiles - OpenFreeMap, https://openfreemap.org (planet tiles, OpenMapTiles schema 3.x). Free, no API keys, no registration, no limit on map views or requests, commercial use allowed; attribution required: "OpenFreeMap (c) OpenMapTiles Data from OpenStreetMap" (shown in the app). Checked 2026-10-16. The tool fetches at most 6 tiles at a time and only the tiles a poster needs (about 20-130 tiles), keeps them in memory and relies on the browser cache (tiles are served with a 10-year cache lifetime). 3. OpenMapTiles vector tile schema - (c) OpenMapTiles, https://openmaptiles.org , schema under CC-BY 4.0 (attribution "(c) OpenMapTiles", given on the poster and in the app). 4. Nominatim, https://nominatim.org , operated by the OpenStreetMap Foundation (https://operations.osmfoundation.org/policies/nominatim/): used only on an explicit search (Enter or the search button, no search-as-you-type) and for the outline shapes; at most one request per second, results cached in the page and the session; the page is identified by its Referer. Results are OpenStreetMap data (ODbL, see 1). SHIPPED TO THE BROWSER 5. opentype.js 2.0.0, Frederik De Bleser and contributors - MIT. https://github.com/opentypejs/opentype.js Glyph outlines for the SVG and PDF export (opentype.js, loaded only when exporting vector files). 6. miniz_oxide 0.8 (Frommi, oyvindln and contributors) and adler2 - MIT / Apache-2.0 / zlib. Compiled into wasm/mapkernel.wasm (deflate for PNG and PDF). 7. Places (data/places-a.txt, data/places-b.txt, data/tzcity.json): GeoNames, https://www.geonames.org/ - cities15000, admin1CodesASCII and alternateNamesV2, CC BY 4.0. Reduced to name, local names in the 15 interface languages, country, region, coordinates, population and time zone (same files as /stars). 8. Fonts (fonts/), SIL Open Font License 1.1 (https://openfontlicense.org). Instanced at one weight and subset to Latin, Latin Extended, Greek and Cyrillic (where the family has them); renamed files only: Cormorant Garamond - Copyright 2015 The Cormorant Project Authors (github.com/CatharsisFonts/Cormorant) EB Garamond - Copyright 2017 The EB Garamond Project Authors (github.com/octaviopardo/EBGaramond12) Instrument Serif - Copyright 2022 The Instrument Serif Project Authors (github.com/Instrument/instrument-serif) Cinzel - Copyright 2020 The Cinzel Project Authors (github.com/NDISCOVER/Cinzel) Montserrat - Copyright 2024 The Montserrat.Git Project Authors (github.com/JulietaUla/Montserrat.git) Jost - Copyright 2020 The Jost Project Authors (github.com/indestructible-type) Manrope - Copyright 2018 The Manrope Project Authors (github.com/googlefonts/manrope) DM Mono - Copyright 2020 The DM Mono Project Authors (github.com/googlefonts/dm-mono) Great Vibes - Copyright 2015 The Great Vibes Pro Project Authors (github.com/googlefonts/great-vibes) Pinyon Script - Copyright 2024 The Pinyon Project Authors (github.com/SorkinType/Pinyon) Inter Tight (interface) - Copyright 2022 The Inter Project Authors (github.com/rsms/inter-tight) None of these fonts has a Reserved Font Name. Fonts in a saved PDF or SVG are glyph outlines. 9. Sample rooms (rooms/*.jpg): Poly Haven HDRI backplates, CC0 1.0 (https://polyhaven.com/license): rooms/bright.jpg - marry_hall rooms/green.jpg - photo_studio_loft_hall THE "MAP + SKY" LAYOUT (loaded only when chosen; the star map engine of fotojockovic.com/stars) 10. Astronomy Engine 2.1.19, Don Cross - MIT. https://github.com/cosinekitty/astronomy (in chunks/skypart-*.js) 11. Star catalogue (data/stars1.bin.gz): The Hipparcos Catalogue, ESA 1997 (ESA SP-1200), via VizieR I/239 (CDS, Strasbourg); stars brighter than V = 6.5. ESA/CDS data, free to use with acknowledgement. 12. Star names, constellation figures, names and boundaries (data/sky.json): IAU Catalog of Star Names (WGSN), CC BY 4.0; d3-celestial by Olaf Frohn, BSD 3-Clause: Copyright (c) 2015, Olaf Frohn. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 13. Milky Way (data/mw1k.jpg): NASA Deep Star Maps 2020, NASA/Goddard Space Flight Center Scientific Visualization Studio (https://svs.gsfc.nasa.gov/4851), Ernie Wright (USRA); Gaia DR2: ESA/Gaia/DPAC. 14. Language flags in the language picker (/static/tools/common/i18n.js): our own drawings. Design research (no code or artwork used): popular map-poster products and generators (Mapiful, Grafomap, Positive Prints, Etsy map prints, the MIT-licensed "maptoposter" generator by originalankur) for the usual layouts: framed map with text below, full-bleed map with a text band or a fade, circle and heart shapes, city silhouettes, road hierarchy by width. No GPL code is shipped. No machine-learning model is used. No Google or Mapbox service is used.