Destination examples Start with your country data. Highlight country codes, fit the region, and apply Lumen tokens or your website’s colors. These are illustrative destinations.
Fit a regional view. initialView="highlighted" fits the highlighted country geometry when the map is enhanced. Without JavaScript, Astro still renders the full map and the country list.
− 100% + Fit highlighted countries Reset zoom
Andorra United Arab Emirates Afghanistan Antigua and Barbuda Anguilla Albania Armenia Angola Argentina American Samoa Austria Australia Aruba Åland Islands Azerbaijan Bosnia and Herzegovina Barbados Bangladesh Belgium Burkina Faso Bulgaria Bahrain Burundi Benin Saint-Barthélemy Bermuda Brunei Darussalam Bolivia Brazil Bahamas Bhutan Botswana Belarus Belize Canada Democratic Republic of the Congo Central African Republic Republic of the Congo Switzerland Côte d'Ivoire Cook Islands Chile Cameroon China Colombia Costa Rica Cuba Republic of Cabo Verde Curaçao Cyprus Northern Cyprus Czech Republic Germany Djibouti Denmark Dominica Dominican Republic Algeria Ecuador Estonia Egypt Western Sahara Eritrea Spain Ethiopia Finland Fiji Falkland Islands / Malvinas Federated States of Micronesia Faeroe Islands France Gabon United Kingdom Grenada Georgia Guernsey Ghana Greenland The Gambia Guinea Equatorial Guinea Greece South Georgia and the Islands Guatemala Guam Guinea-Bissau Guyana Hong Kong Heard I. and McDonald Islands Honduras Croatia Haiti Hungary Indonesia Ireland Israel Isle of Man India British Indian Ocean Territory Iraq Iran Iceland Italy Jersey Jamaica Jordan Japan Kenya Kyrgyzstan Cambodia Kiribati Comoros Saint Kitts and Nevis Dem. Rep. Korea Republic of Korea Kuwait Cayman Islands Kazakhstan Lao PDR Lebanon Saint Lucia Liechtenstein Sri Lanka Liberia Lesotho Lithuania Luxembourg Latvia Libya Morocco Monaco Moldova Montenegro Saint-Martin Madagascar Marshall Islands North Macedonia Mali Myanmar Mongolia Macao Northern Mariana Islands Mauritania Montserrat Malta Mauritius Maldives Malawi Mexico Malaysia Mozambique Namibia New Caledonia Niger Norfolk Island Nigeria Nicaragua Netherlands Norway Nepal Nauru Niue New Zealand Oman Panama Peru French Polynesia Papua New Guinea Philippines Pakistan Poland Saint Pierre and Miquelon Pitcairn Islands Puerto Rico Palestine Portugal Palau Paraguay Qatar Romania Serbia Russian Federation Rwanda Saudi Arabia Solomon Islands Seychelles Sudan Sweden Singapore Saint Helena Slovenia Slovakia Sierra Leone San Marino Senegal Somalia Somaliland Suriname South Sudan São Tomé and Principe El Salvador Sint Maarten Syria Kingdom of eSwatini Turks and Caicos Islands Chad French Southern and Antarctic Lands Togo Thailand Tajikistan Timor-Leste Turkmenistan Tunisia Tonga Turkey Trinidad and Tobago Tuvalu Taiwan Tanzania Ukraine Uganda United States Uruguay Uzbekistan Vatican Saint Vincent and the Grenadines Venezuela British Virgin Islands United States Virgin Islands Vietnam Vanuatu Wallis and Futuna Islands Samoa Kosovo Yemen South Africa Zambia Zimbabwe Choose a country Choose a country Andorra United Arab Emirates Afghanistan Antigua and Barbuda Anguilla Albania Armenia Angola Argentina American Samoa Austria Australia Aruba Åland Islands Azerbaijan Bosnia and Herzegovina Barbados Bangladesh Belgium Burkina Faso Bulgaria Bahrain Burundi Benin Saint-Barthélemy Bermuda Brunei Darussalam Bolivia Brazil Bahamas Bhutan Botswana Belarus Belize Canada Democratic Republic of the Congo Central African Republic Republic of the Congo Switzerland Côte d'Ivoire Cook Islands Chile Cameroon China Colombia Costa Rica Cuba Republic of Cabo Verde Curaçao Cyprus Northern Cyprus Czech Republic Germany Djibouti Denmark Dominica Dominican Republic Algeria Ecuador Estonia Egypt Western Sahara Eritrea Spain Ethiopia Finland Fiji Falkland Islands / Malvinas Federated States of Micronesia Faeroe Islands France Gabon United Kingdom Grenada Georgia Guernsey Ghana Greenland The Gambia Guinea Equatorial Guinea Greece South Georgia and the Islands Guatemala Guam Guinea-Bissau Guyana Hong Kong Heard I. and McDonald Islands Honduras Croatia Haiti Hungary Indonesia Ireland Israel Isle of Man India British Indian Ocean Territory Iraq Iran Iceland Italy Jersey Jamaica Jordan Japan Kenya Kyrgyzstan Cambodia Kiribati Comoros Saint Kitts and Nevis Dem. Rep. Korea Republic of Korea Kuwait Cayman Islands Kazakhstan Lao PDR Lebanon Saint Lucia Liechtenstein Sri Lanka Liberia Lesotho Lithuania Luxembourg Latvia Libya Morocco Monaco Moldova Montenegro Saint-Martin Madagascar Marshall Islands North Macedonia Mali Myanmar Mongolia Macao Northern Mariana Islands Mauritania Montserrat Malta Mauritius Maldives Malawi Mexico Malaysia Mozambique Namibia New Caledonia Niger Norfolk Island Nigeria Nicaragua Netherlands Norway Nepal Nauru Niue New Zealand Oman Panama Peru French Polynesia Papua New Guinea Philippines Pakistan Poland Saint Pierre and Miquelon Pitcairn Islands Puerto Rico Palestine Portugal Palau Paraguay Qatar Romania Serbia Russian Federation Rwanda Saudi Arabia Solomon Islands Seychelles Sudan Sweden Singapore Saint Helena Slovenia Slovakia Sierra Leone San Marino Senegal Somalia Somaliland Suriname South Sudan São Tomé and Principe El Salvador Sint Maarten Syria Kingdom of eSwatini Turks and Caicos Islands Chad French Southern and Antarctic Lands Togo Thailand Tajikistan Timor-Leste Turkmenistan Tunisia Tonga Turkey Trinidad and Tobago Tuvalu Taiwan Tanzania Ukraine Uganda United States Uruguay Uzbekistan Vatican Saint Vincent and the Grenadines Venezuela British Virgin Islands United States Virgin Islands Vietnam Vanuatu Wallis and Futuna Islands Samoa Kosovo Yemen South Africa Zambia Zimbabwe Portugal Spain Switzerland Germany Italy Regional highlights fitted on load. Country data belongs to your application. View WorldMap code Framework usage
Switch targets to compare the adapter code. This live preview runs the Astro example. React and Elements use their own behavior APIs; complete the matching framework setup before copying an example. Astro React Elements
import { WorldMap } from '@santi020k/lumen-astro'
import { lumenWorldMapCountries } from '@santi020k/lumen-core/world-map-data'
< WorldMap
countries = { lumenWorldMapCountries }
label = "Sample European destinations"
highlightedCountries = { ['PT' , 'ES' , 'CH' , 'DE' , 'IT' ]}
initialView = "highlighted"
variant = "solid"
animated = { false }
style = "--ui-world-map-highlight: hsl(var(--accent));"
caption = "Regional highlights fitted on load. Country data belongs to your application."
/> import type { CSSProperties } from 'react'
import { WorldMap } from '@santi020k/lumen-react'
import { lumenWorldMapCountries } from '@santi020k/lumen-core/world-map-data'
const style: CSSProperties & { '--ui-world-map-highlight' : string } = {
'--ui-world-map-highlight' : 'hsl(var(--accent))'
}
const Example = () => < WorldMap countries={ lumenWorldMapCountries}
label= "Sample European destinations" highlightedCountries={[ 'PT' , 'ES' , 'CH' , 'DE' , 'IT' ]}
initialView= "highlighted" variant= "solid" animated={ false } style={ style} /> < script type = "module" >
import { defineLumenWorldMap, LumenWorldMapElement } from '@santi020k/lumen-elements/components/world-map'
import { lumenWorldMapCountries } from '@santi020k/lumen-core/world-map-data'
import '@santi020k/lumen-elements/styles.css'
defineLumenWorldMap()
const map = document.querySelector('lumen-world-map' )
if (map instanceof LumenWorldMapElement) map.countries = lumenWorldMapCountries
</ script >
< lumen-world-map initial-view = "highlighted" variant = "solid" animated = "false" style = "--ui-world-map-highlight: hsl(var(--accent))" label = "Sample European destinations" highlighted-countries = '["PT", "ES", "CH", "DE", "IT"]' > </ lumen-world-map >
Edit WorldMap in browser
Keep destination metadata in your application. Use ISO country codes for highlights. Labels, travel dates, images, and navigation belong to your website. Listen to ui:world-map-select in Astro or Elements, or use onCountrySelect in React to render details with your existing components.
< WorldMap countries = { lumenWorldMapCountries }
highlightedCountries = { visitedCountries }
label = " My visited countries "
onCountrySelect = {({ countryId }) => setActiveCountry (countryId) } /> < WorldMap countries = { lumenWorldMapCountries }
highlightedCountries = { visitedCountries }
label = " My visited countries "
onCountrySelect = {({ countryId }) => setActiveCountry ( countryId )} /> Match your website. . travel-map {
--ui-world-map-highlight : hsl ( var ( --brand ));
--ui-world-map-marker : hsl ( var ( --accent ));
--ui-world-map-surface : hsl ( var ( --surface-muted ));
} . travel-map {
--ui-world-map-highlight : hsl ( var ( --brand ));
--ui-world-map-marker : hsl ( var ( --accent ));
--ui-world-map-surface : hsl ( var ( --surface-muted ));
} Localize country names with labels, navigation buttons with zoomLabels, and the chooser with listLabel. Use zoomable={false} for a static presentation.
Navigation guide · Full component API and default examples