Install any skill in seconds. Free to start, no credit card required.
Get Started Free →asgeirtj/maps-geography
Accurate maps from real geo data — use for any map, or whenever geography would make a good graphic for a deliverable
Passed 19 of 23 test cases with the skill, and 7 of 23 without it.
and 13 more in the full report
12 fixed7 passed either way4 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 12 test cases the skill fixed. Same model, same prompt, with and without the skill.
When setting up an interactive street map with Leaflet 1.9.4 in HTML, what is the exact script tag required for loading the Leaflet JavaScript file with Subresource Integrity?
| Checked | Without skill | With skill |
|---|---|---|
| The script tag src attribute is https://unpkg.com/[email protected]/dist/leaflet.js | Passed | Passed |
| The script tag integrity attribute is sha384-cxOPjt7s7Iz04uaHJceBmS+qpjv2JkIHNVcuOrM+YHwZOmJGBXI00mdUXEq65HTH | Missed | Passed |
The instructions your model reads when the skill loads.
Geographic maps are data problems, not drawings: never freehand country outlines, coastlines, or street layouts — hand-drawn geography is reliably wrong, and users notice. Load real geometry and render it.
Build every map page as plain HTML — a .html file with ordinary tags, NEVER a .dc.html Design Component, even when every other design in the project is one: DC confines scripts to , whose mount timing races the map container — the same call the data-viz and 3D skills make.
For decks, docs, graphics, and animations — anything static or exported — render TopoJSON geometry with d3-geo: fetch https://cdn.jsdelivr.net/npm/[email protected]/countries-110m.json (Natural Earth data, public domain; the URL is version-pinned — use it exactly), convert with topojson.feature(topology, topology.objects.countries), and draw with d3.geoPath() under a projection chosen for the job (d3.geoNaturalEarth1 for the whole world; d3.geoMercator().fitSize(...) to zoom a region). d3-geo ships inside the d3 bundle below. Load the libraries ONLY through these exact pinned, hash-verified tags, in . These tags fail closed if tampered with; any other script you add would load unverified — so do not change versions, URLs, or hashes, and add nothing else from a CDN:
Inline SVG from d3 also exports cleanly to PNG and PDF, which live map tiles do not — so exported deliverables always get d3 geometry, never an embedded tile map.
For street-level interactive maps — prototypes, websites, anything the user pans and zooms — use Leaflet with OpenStreetMap tiles, loaded ONLY through these exact tags (the stylesheet is required: without leaflet.css the tiles render scrambled):
Create the map with L.map(...) and L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', { attribution: '© OpenStreetMap contributors' }). The attribution string is OpenStreetMap's license requirement — never omit it.
test cases passed, vs 7 / 23 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.