Live examples
Magellan
The first circumnavigation (1519–1522), stop by stop.
World Cup
Every men's World Cup final, 1930–2026, by host city.
Lunar landings
Crewed & robotic Moon landings on a lunar basemap.
Exoplanets
The dawn of exoplanet discovery, on a celestial chart.
Olympics
Every Summer & Winter host city — ☀️ / ❄️ markers.
Tezos protocols
Tezos protocol-upgrade cities, with on-chain voting history.
Ethereum upgrades
Execution cities + consensus stars (EIP-8133).
Earth tilesMoon / Mars imagerycelestial RA/Dectimeline playbackdate slider
Using Periplum? Add the periplum topic to your repo and it joins the gallery → all projects using Periplum.
Make your own in minutes
- Open the template → “Use this template”.
- Edit
index.html(title, basemaps, colours) anddata.json(your points). - Settings → Pages → deploy from
main. Your map is live.
<script src="https://cdn.jsdelivr.net/gh/periplum/periplum-core@v0.3.4/dist/periplum.js"></script>
<script>
Periplum.render({
title: "My voyage",
dataUrl: "data.json",
basemaps: [{ id:"earth", name:"🌍 Earth", type:"tiles",
tileUrl:"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
attribution:"© OpenStreetMap", minZoom:2, initialView:[20,0], initialZoom:2 }],
statusColors: { "outbound":"#1f77b4", "return":"#2ca02c" }
});
</script>
Each data item carries one or more placements (a basemap id + coordinates). See the data contract.