D3.js maps built with the mapjson API
properties=name to attach country names.d3.contours steps each ring inward from the coast, so big continents fill with rings and the map reads as relief.areakm2), force-packed near its real position. A world map you read by weight, not by outline.areakm2. A De Stijl painting that's also a size atlas./v1/resolve — which quietly fixes Turkey→Türkiye, East Timor→Timor-Leste and others a text match would drop.capitalLat and capitalLng properties. Labels use a force simulation to avoid overlapping.postal layer, colored by 3-digit prefix. Every feature's gid is the bare ZIP code — join your ZIP-keyed data with a dictionary lookup.fitSize to auto-fit the projection to the returned geometry — the same pattern works for any country.filter is an ISO country code and detail=high, the API automatically serves a high-resolution file for small countries and territories.GI) is ~7 km² and only exists at detail=high. Three filter calls — Spain, Morocco, Gibraltar — frame the strait as separate polygons. Ceuta, a Spanish city with no ISO code, is a marker rather than a polygon.detail=auto.filter call, framed on the Strait of Hormuz. Dashed lines measure the narrows — and show that the famous “33 km” chokepoint is measured to Great Quoin Island, an Omani islet too small for the base map to even carry.detail=high. Fitted to Italy the Vatican is under a pixel, so the map zooms to 400× with buttons that fly you to each enclave./v1/geo call./v1/geo basemap./v1/points?type=city endpoint — major cities plus every national capital as GeoJSON points, sized by population with capitals in gold. Each point is pre-tagged with country and admin1 region, so one filter narrows to a continent, country, or state.areakm2). Flags pulled live from flagpedia.net by ISO2 code.areakm2) so the scale gives nothing away. Both the shape and the answer options come from a single /v1/geo call.languages property. One language means a solid fill; several means diagonal stripes, one band per color.currencies property — dollar users in green (Ecuador, Panama, Timor-Leste…), euro users in blue (the eurozone plus Kosovo and Montenegro), and Zimbabwe's basket counting for both.d3.geoCentroid/d3.geoBounds) and neighboring countries (topojson.neighbors) — all computed client-side.filter=Martinique is resolved to ISO code MQ server-side. At detail=high the 10m dataset resolves the island clearly.landlocked: true flag, shaded on a world map. The two doubly landlocked states — every neighbour landlocked too — are found live from shared-border topology with topojson.neighbors().filter=US-MA — only this state's districts, not all 3224 US counties. Population choropleth joined via 5-digit FIPS gid — the same code used by Census, BLS, and CDC data.topojson.mesh.capital, capitalLat and capitalLng properties. The live map is client-side, but the code shown is a complete Node.js script producing the same SVG server-side — no browser, no DOM, no headless Chrome.