New PeakNav 1.2.0 · real sky, GPX tours, orbit mode, Python API
Every mountain on Earth, in 3D — with its name, its height and the paths that lead there.
Fly over the terrain, point your phone at the horizon to name the peaks in front of you, or drop a photo in and see it tagged with the summits it shows. Free, open source, and works offline.
PeakNav drapes satellite imagery, trails and place names over a real elevation model of the whole planet, then lets you look at it the way you look at a mountain — from the valley floor, from the summit, or from the air.
Every summit is labelled with its name and elevation as you move through the terrain. Mountain ranges, islands, lakes, glaciers and alpine huts are labelled too.
Footpaths, roads and rivers from OpenStreetMap are projected onto the 3D shape of the mountains, so you can see where a path actually goes before you walk it.
The sun, the moon with its current phase, and the stars are drawn where they really are for your location and time. Compass points sit on the horizon, and a full sky map can be overlaid.
Load a GPX track and follow its path through the terrain — a hike you have planned or one you have already done, replayed in 3D.
Tap any point to fly to it in a smooth animation, or choose "orbit around" to circle a summit and see it from every side.
On Android, the gyroscope and compass turn the view with you: hold the phone up and the peaks in front of you are named on screen.
Take a photo in the app, or open one from your gallery — its position is read from the EXIF data — and PeakNav overlays the names of the mountains in the picture. Share it as JPEG or PNG.
Find towns and summits by name in any language — "Venezia" and "Venice" both work — with elevations shown for peaks. Or type in coordinates directly.
Terrain and map data download per area and stay on the device, so the app keeps working on the ridge where there is no signal.
Views from the app, straight off the renderer. Tap one to see it full size.














Fly-throughs and orbits rendered by PeakNav's headless renderer, at 720p. They stream from Wikimedia Commons and only load when you press play.
All videos by Upabjojr on Wikimedia Commons, licensed CC BY-SA 4.0 — free to reuse with attribution.
Short screen recordings of the Android app, version 1.2.0, showing how the controls work.
Released 5 August 2026. Each desktop download is self-contained — the app, its native libraries and a Java 17 runtime — so nothing else needs installing. All releases on GitHub →
Google Play keeps it updated automatically. The same signed build is also available as a direct APK.
Get it on Google Play peaknav-1.2.0.apk for direct installWindows 10 / 11, 64-bit. Installs per user, no administrator rights needed.
Download installer peaknav-1.2.0-windows-x64-setup.exeA Debian package for Debian and Ubuntu, or an AppImage that runs on any distribution.
Debian / Ubuntu (.deb) AppImage for other distributionsAlready have Java 17+, or on ARM or a 32-bit machine? The plain jar runs everywhere: java -jar peaknav-1.2.0.jar
PeakNav's engine is available beyond the app: a Python package on PyPI, a headless renderer that draws off-screen, and the global datasets it runs on.
# pip install peaknav
from peaknav.terrain import elevation_at
elevation_at(45.9417, 7.7480) # the Breithorn → 4160
from peaknav.headless import PeakNavHeadless
with PeakNavHeadless(45.9763, 7.6586) as nav:
nav.look(bearing_deg=230, pitch_deg=-4)
nav.set_altitude_asl(3200)
nav.save_frame("matterhorn.png")
peaknav.terrain gives the elevation of any coordinate on Earth in pure Python, from the same compressed ASTER dataset the app renders. peaknav.headless runs the real renderer off-screen for scripted snapshots, panoramas and videos — it exposes a REST API described at /openapi.json. peaknav.jupyter (experimental) puts an interactive view inside a notebook.
pip install peaknavThe full notes for every version are on the releases page.
peaknav package on PyPI.