A calm, scientifically grounded 3D explorer of the living Earth — the same product in the browser and in VR — layering real climate, ocean and live-traffic data over an astronomically correct globe, with a deep-time mode that winds the continents back to Pangaea.
| | | | ------------ | ---------------------------------------------------------------- | | Live | https://www.habiterra.org | | Role | Solo — concept, design, engineering, deployment | | Stack | three.js · WebXR · WebGL/GLSL · PWA · live science APIs | | Timeline | 95 % · close to release; built in spare time | | Status | 95 % · close to release |
The challenge
Build an Earth explorer that feels like a calm planetary observatory — not an overloaded GIS dashboard — and make the same product work both in the browser and in VR on a Meta Quest. It has to be astronomically correct, layer genuinely scientific data (climate, ocean, live ships/aircraft/satellites), and stay legible while doing it. Guiding rule: Earth first — the globe is always the main object, panels are tools, never the centre.
The approach
- Astronomically correct core (three.js). Sun–Earth–Moon with real ephemerides — 23.44° axial tilt, eccentric orbit, sidereal rotation, a Meeus lunar model — and NASA Blue Marble monthly textures so the surface changes with the seasons (snow in winter, vegetation in summer), with topography and ocean bathymetry.
- A living surface. Day/night terminator with a dusk band and city lights, animated ocean waves and sun-glitter, and an exaggerated tidal envelope with two bulges that track the Moon and Sun (spring/neap tides from the elongation).
- Real weather & circulation. A GPU particle wind field of the global circulation (trade winds, westerlies, migrating ITCZ, reversing monsoon) on a wind-speed colour scale; classic blue-water sailing routes that light up only in their favourable season. Live winds from MET Norway (CC BY 4.0), optionally Open-Meteo with your own account, with pressure markers and meteorological wind barbs.
- Live layers, all on one time slider. Real ships (AIS via aisstream.io), aircraft (ADS-B via airplanes.live), satellites & the ISS (TLE/SGP4 via CelesTrak) — thousands of stylised, instanced markers with detail only on focus.
- "Satellite zoom." On zoom, the view streams NASA GIBS tiles blended with the day/night lighting — far beyond 8k near-view at minimal memory, and it holds up in VR. On the Quest the tile resolution is halved, because there every GPU megabyte counts.
- VR done right (WebXR, Quest 3). No wrist-locked menus: a deliberately summonable, grabbable, pinnable floating panel system with both hand and controller interaction — a quiet observatory, not a cockpit.
- Explorer Mode. A separate workspace over the same layers: free-axis globe rotation, full-text search (countries, mountains, rivers, tectonic plates) and a GPlates-driven plate-tectonics timeline that reconstructs the Earth from Pangaea to today, with paleo points of interest.
- Spaceflight. Six probes on their real trajectories from JPL Horizons — Voyager 1 and 2, Cassini, Juno, New Horizons, Parker — flown as actual ephemerides rather than decorative arcs, plus 19 milestones of spaceflight history you can walk up to. In VR the craft can be picked up and turned in your hands.
- Deep time, properly deep. Beyond the plate reconstruction: pre-baked palaeo coastlines per era, dinosaur models placed on the reconstructed surface, and an era bar that winds the Earth back through the Phanerozoic.
- The Anthropocene and the world order. Wildfires (NASA FIRMS), air quality (OpenAQ), natural disasters (NASA EONET) and earthquakes (USGS) as live layers; country indicators, alliances, commodity prices and a financial-stress reading from the ECB — observational, never editorial.
- Trade at sea. The great shipping lanes and their chokepoints, laid along measured waypoints rather than drawn freehand.
- A voice, in ten languages. 44 narration clips per language explain what you are looking at — the author's own voice, cloned with an open-source pipeline, so the app speaks in every language it supports.
- Told in ten languages, right-to-left included. Every layer, every info card, every legal text — not just the interface chrome.
- Shipped as a product. Installable PWA (manifest + service worker) on the path to the Meta Horizon store.
The result
- One coherent product across browser and VR, with five areas — Time, Earth, Ocean, Traffic, Climate — and a strict "one focus layer at a time" rule that keeps it readable.
- Genuinely live scientific data (NASA, USGS, MET Norway, CelesTrak, NASA FIRMS, OpenAQ, ECB, AIS) folded into a single calm interface.
- The same information architecture in both modes; performant enough to render thousands of live entities via instanced markers.
- Localised into 10 languages (including right-to-left Arabic), on the path to the paid Meta Horizon store.
What this demonstrates
- Real depth across 3D graphics (custom shaders), real-time data integration (many live APIs) and WebXR/VR — end to end.
- Turning a huge feature space into a calm, legible product through disciplined information architecture.
- Full ownership: concept, design, engineering, performance, deployment.
- Modern, AI-assisted delivery that turns an ambitious brief into working software quickly — human-steered and curated.
Tech at a glance
three.js · WebXR (Meta Quest 3) · WebGL / GLSL · PWA · satellite.js (SGP4) · NASA Blue Marble / GIBS · GPlates · MET Norway · airplanes.live (ADS-B) · AIS · NASA GIBS · JPL Horizons



