
mapbox-cartography
Expert guidance on map design principles, color theory, visual hierarchy, typography, and cartographic best practices for creating effective and beautiful maps with Mapbox. Use when designing map styles, choosing colors, or making cartographic decisions.
- Installs
- 2.1K
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/mapbox/mapbox-agent-skills --skill mapbox-cartography- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads mapbox-cartography automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Mapbox Cartography Skill
This skill provides expert cartographic knowledge to help you design effective, beautiful, and functional maps using Mapbox.
Core Cartographic Principles
Visual Hierarchy
Maps must guide the viewer's attention to what matters most:
- Most important: POIs, user location, route highlights
- Secondary: Major roads, city labels, landmarks
- Tertiary: Minor streets, administrative boundaries
- Background: Water, land use, terrain
Implementation:
- Use size, color intensity, and contrast to establish hierarchy
- Primary features: high contrast, larger symbols, bold colors
- Background features: low contrast, muted colors, smaller text
Color Theory for Maps
Color Harmony:
- Analogous colors: Use colors next to each other on color wheel (blue-green-teal) for cohesive designs
- Complementary colors: Use opposite colors (blue/orange, red/green) for high contrast emphasis
- Monochromatic: Single hue with varying saturation/brightness for elegant, minimal designs
Color Psychology:
- Blue: Water, trust, calm, professional (default for water bodies)
- Green: Parks, nature, growth, eco-friendly (vegetation, parks)
- Red/Orange: Urgent, important, dining (alerts, restaurants)
- Yellow: Caution, highlight, attention (warnings, selected items)
- Gray: Neutral, background, roads (infrastructure)
Accessibility:
- Ensure 4.5:1 contrast ratio for text (WCAG AA)
- Don't rely solely on color to convey information
- Test designs with colorblind simulators
- Avoid red/green combinations for critical distinctions
Color Palette Templates:
Light Theme (Day/Professional):
{
"background": "#f5f5f5",
"water": "#a0c8f0",
"parks": "#d4e7c5",
"roads": "#ffffff",
"buildings": "#e0e0e0",
"text": "#333333"
}
Dark Theme (Night Mode):
{
"background": "#1a1a1a",
"water": "#0d47a1",
"parks": "#2e7d32",
"roads": "#3a3a3a",
"buildings": "#2d2d2d",
"text": "#ffffff"
}
Road color rule for dark themes: Roads must use neutral dark gray (
#3a3a3a), visibly distinct from the background but not colored. Never style roads with amber, blue, or other hues — reserve color for app data layers (routes, markers). Colored base roads and colored data layers will compete visually. Local roads that blend into the background (#1e1e1eon#1a1a1a) create a "floating labels" problem where street names appear with no visible road beneath them.
High Contrast (Accessibility):
{
"background": "#000000",
"water": "#0066ff",
"parks": "#00ff00",
"roads": "#ffffff",
"buildings": "#808080",
"text": "#ffffff"
}
Vintage/Retro:
{
"background": "#f4e8d0",
"water": "#b8d4d4",
"parks": "#c8d4a4",
"roads": "#d4c4a8",
"buildings": "#e4d4c4",
"text": "#4a3828"
}
Typography at Map Scale
Font Selection:
- Sans-serif (Roboto, Open Sans): Modern, clean, high legibility at small sizes - use for labels
- Serif (Noto Serif): Traditional, formal - use sparingly for titles or historic maps
- Monospace: Technical data, coordinates
Text Sizing:
Place labels (cities, POIs): 11-14px
Street labels: 9-11px
Feature labels (parks): 10-12px
Map title: 16-20px
Attribution: 8-9px
Label Placement:
- Point labels: Center or slightly offset (avoid overlap with symbol)
- Line labels: Follow line curve, repeat for long features
- Area labels: Center in polygon, sized appropriately
- Prioritize: Major features get labels first, minor features labeled if space allows
Zoom Level Strategy
Zoom 0-4 (World to Continent):
- Major country boundaries
- Ocean and sea labels
- Capital cities only
Zoom 5-8 (Country to State):
- State/province boundaries
- Major cities
- Major highways
- Large water bodies
Zoom 9-11 (Metro Area):
- City boundaries
- Neighborhoods
- All highways and major roads
- Parks and landmarks
Zoom 12-15 (Neighborhood):
- All streets
- Building footprints
- POIs (restaurants, shops)
- Street names
Note: Mapbox's hosted Streets style defaults to showing most POIs around zoom 14. For custom styles, start POIs at zoom 12 — this is the neighborhood scale where density is manageable and users are browsing. Zoom 14 is late; zoom 10 (metro-area scale) is far too early and creates severe icon clutter.
Zoom 16-22 (Street Level):
- All detail
- House numbers
- Parking lots
- Fine-grained POIs
Mapbox-Specific Implementation Guidance
Style Layer Best Practices
Layer Ordering (bottom to top):
- Background (solid color or pattern)
- Landuse (parks, residential, commercial)
- Water bodies (oceans, lakes, rivers)
- Terrain/hillshade (if using elevation)
- Buildings (3D or 2D footprints)
- Roads (highways → local streets)
- Borders (country, state lines)
- Labels (place names, street names)
- POI symbols
- User-generated content (routes, markers)
Common mistake: Developers often put their app's route line or active markers below POI symbols, reasoning that "POIs must stay visible." This is backwards — user-generated content (your route, selected location, user position) is the most important layer and must render above everything, including POIs. A route line that covers a POI icon is acceptable; a route obscured by POI icons is not.
Map Context Considerations
Know Your Audience:
- General public: Simplify, use familiar patterns (Google/Apple style)
- Technical users: Include more detail, technical layers, data precision
- Domain experts: Show specialized data, use domain-specific symbology
Platform Considerations:
- Mobile: Larger touch targets (44x44px minimum), simpler designs, readable at arm's length
- Desktop: Can include more detail, hover interactions, complex overlays
- Print: Higher contrast, larger text, consider CMYK color space
- Outdoor/Bright: Higher contrast, avoid subtle grays
Use Case Optimization:
- Navigation: Emphasize roads, clear hierarchy, route visibility
- Data visualization: Muted base map, let data stand out
- Storytelling: Guide viewer attention, establish mood with colors
- Location selection: Show POIs clearly, provide context
- Analysis: Include relevant layers, maintain clarity at different zooms
Reference Files
For detailed guidance on specific topics, load these references as needed:
references/scenarios.md— Common scenario guidance (Restaurant Finder, Real Estate, Data Visualization, Navigation)references/performance-testing.md— Performance optimization, testing checklist, and common mistakes to avoid
When to Use This Skill
Invoke this skill when:
- Designing a new map style
- Choosing colors for map elements
- Making decisions about visual hierarchy
- Optimizing for specific use cases
- Troubleshooting visibility issues
- Ensuring accessibility
- Creating themed maps (dark mode, vintage, etc.)
FAQ
What does the mapbox-cartography skill do?
Expert guidance on map design principles, color theory, visual hierarchy, typography, and cartographic best practices for creating effective and beautiful maps with Mapbox. Use when designing map styles, choosing colors, or making cartographic decisions.
How do I install mapbox-cartography?
Run npx skills add https://github.com/mapbox/mapbox-agent-skills --skill mapbox-cartography in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/mapbox-cartography/ (personal) or .claude/skills/mapbox-cartography/ (project).
Which AI agents can use mapbox-cartography?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is mapbox-cartography safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains mapbox-cartography?
It is published by mapbox in mapbox/mapbox-agent-skills, and it is an official skill from the maker of the technology it covers. It has 2,101 recorded installs.
More from mapbox/mapbox-agent-skills
mapbox-web-integration-patterns
mapbox/mapbox-agent-skills
Official integration patterns for Mapbox GL JS across popular web frameworks (React, Vue, Svelte, Angular). Covers setup, lifecycle management, token handling, search integration, and common pitfalls. Based on Mapbox's create-web-app scaffolding tool.
mapbox-web-performance-patterns
mapbox/mapbox-agent-skills
Performance optimization patterns for Mapbox GL JS web applications. Covers initialization waterfalls, bundle size, rendering performance, memory management, and web optimization. Prioritized by impact on user experience.
mapbox-style-patterns
mapbox/mapbox-agent-skills
Common style patterns, layer configurations, and recipes for typical mapping scenarios including restaurant finders, real estate, data visualization, navigation, delivery/logistics, and more. Use when implementing specific map use cases or looking for proven style patterns.
mapbox-geospatial-operations
mapbox/mapbox-agent-skills
Expert guidance on choosing the right geospatial tool based on problem type, accuracy requirements, and performance needs
mapbox-data-visualization-patterns
mapbox/mapbox-agent-skills
Patterns for visualizing data on maps including choropleth maps, heat maps, 3D visualizations, data-driven styling, and animated data. Covers layer types, color scales, and performance optimization.
mapbox-style-quality
mapbox/mapbox-agent-skills
Expert guidance on validating, optimizing, and ensuring quality of Mapbox styles through validation, accessibility checks, and optimization. Use when preparing styles for production, debugging issues, or ensuring map quality standards.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.