God's Eye View: The Open-Source Spy-Satellite Globe You Can Run in Your Browser
Author: Rasmus

God's Eye View: The Open-Source Spy-Satellite Globe You Can Run in Your Browser


A spy-satellite simulator in your browser — and then you realize the sources are public and the data is real. That is the hook of God’s Eye View, the open-source project by creator Bilawal Sidhu that grew out of a viral YouTube series with over five million views. After months of “when will you open-source this?” comments, the code went public in June 2026 — and it has since picked up roughly nine thousand stars in a few weeks.

This guide covers what it actually does, which of the thirteen live layers you get for free, what the Google Maps key really costs, and how to run the whole thing on your own machine.

1. What is God’s Eye View?

God’s Eye View is a photorealistic 3D globe in your browser that renders live world activity: thousands of aircraft on real transponder telemetry, ships broadcasting AIS positions, satellites propagated from current orbital elements, earthquakes from the last 24 hours, street-level traffic, public cameras projected into 3D cities — even a geolocated world radio layer you can tune like an analog dial.

The project’s own framing is honest about the vibe: “Half the magic is that it looks like a forbidden cockpit. The other half is that every line of code is inspectable.” It is MIT-licensed, built with nothing but vanilla JavaScript, CesiumJS, and Vite — the same WebGL globe engine used by modern mapping products.

Most open-source intelligence today is a pile of browser tabs. The signals are abundant; the interface is the bottleneck. God’s Eye View turns those signals into a place — the world is already broadcasting, and this makes it visible on a photorealistic Earth in real time.

2. Why it feels different

Three things separate it from a screensaver:

  • The data is real. The airliner crossing your screen is reporting telemetry. The camera is installed at a published location. The ISS position is propagated from current orbital elements. No classified clearance required — public signal all the way down.
  • The labeling is honest. Where a live feed is unavailable, the experience is modeled and clearly marked: keyless traffic is a labeled simulation, camera poses are estimated until calibrated, and launch ascent playback is marked RECONSTRUCTED ESTIMATE. Every layer keeps its source and freshness state visible — partial, delayed, simulated, unavailable.
  • It runs under your control. The interface lives in your browser, binds to localhost by default, and every line of code is inspectable. No account, no signup.

3. What’s on the globe

Thirteen live layers — and ten of them need nothing at all: no key, no account, no signup.

LayerWhat you getSource
🗺️ Map StackGoogle Photorealistic 3D, Bing aerial, OSMGoogle / Cesium ion / OSM
✈️ Live FlightsThousands of live aircraft + route historyOpenSky + adsb.lol
🎖️ Military FlightsADS-B military traffic in amberadsb.lol
🚢 Live VesselsThousands of ships worldwideAISStream
🛰️ Satellites~840-object catalog, color-coded by class; the DENSE chip adds the full Starlink shellCelesTrak
🌍 EarthquakesGlobal seismic activity, last 24hUSGS
🚗 TrafficLive congestion at street level (real with a TomTom key, labeled simulation without)TomTom + OSM
📹 CCTV Mesh~800 public cameras projected into the 3D space — Austin, California, LondonCity APIs
📻 RadioGeolocated world radio with an analog tuner across up to 750 stationsRadio Browser
🚲 BikeshareLive station availabilityGBFS
🔥 Active FiresLive NASA FIRMS detectionsNASA FIRMS
🚀 Space MissionsRolling 30-day launches with payload and recovery detailLaunch Library 2
🎖️ Mapped InstallationsMilitary-site context from community mapping, labeled as incompleteOpenStreetMap

Bundled static infrastructure includes 4,351 datacenters, 704 dams, and 712 submarine cables — and you can dive deep on any of it: click a tracked aircraft and ride along in cockpit view, switching sensors mid-flight from NVG to FLIR, dragging a camera gizmo to calibrate its view, or scrubbing a Falcon 9 ascent replay at 0.25×–4× speed.

4. Quick start: running it yourself

Requirements

  • Node.js 24.14.x or 26.x (enforced by package.json)
  • npm
  • One Google Maps API key — the only required key, and the whole entry fee

Setup

# 1. Clone the repository
git clone https://github.com/bilawalsidhu/gods-eye-view.git
cd gods-eye-view

# 2. Copy the environment template and add your Google Maps key
cp .env.example .env

# 3. Install and run
npm install
npm run dev -- --host localhost --port 4173

Open http://localhost:4173 — cold start settles in under two seconds on a recent laptop. A first-run card offers to stage a mission for you: Live Contacts, Space Missions, or Environmental.

On macOS there is a shortcut: ./scripts/dev-fresh.sh clears the Vite cache and pulls your keys straight from the Keychain.

Not a coder? Have an AI do it

The README’s best tip for non-developers: install a coding agent — Claude Code, Codex, Cursor, or Antigravity — and paste this:

Clone https://github.com/bilawalsidhu/gods-eye-view and set it up on my machine. Install everything it needs, walk me through getting the required Google Maps API key step by step, put the keys in .env, and help me set a billing alert and a usage quota so I can’t overspend. Then start the dev server and open it in my browser. I’m not a developer — explain what you’re doing as you go, and ask me before any step that could cost money.

5. What it actually costs

The color code used throughout the README: 🟢 needs nothing · 🟡 free key · 🔴 metered. Most of the globe is 🟢. The fully keyed experience takes five keys:

KeyWhyCost reality
🔴 Google Maps (required)The photorealistic 3D planet via the Map Tiles APIMetered — but billing counts root tileset requests, one of which buys up to three hours of unlimited rendering, and the first 1,000 sessions per month are free, then roughly $6 per 1,000 (current pricing). A solo explorer rarely leaves the free tier.
🔴 OpenAIVoice control + AI HUD summaryMetered realtime audio; the app shows a live session estimate, warns at $2, and applies a built-in $5 session cap (pricing).
🟡 AISStreamLive global shipsFree — a two-minute signup at aisstream.io
🟡 NASA FIRMSLive active firesFree key at firms.modaps.eosdis.nasa.gov
🟡 TomTomReal traffic instead of a labeled simulationDeveloper account at developer.tomtom.com

Optional extras: a Cesium ion token for Bing imagery, an anonymous-or-oauth OpenSky account for more flight-polling credits, and a Launch Library 2 token for a higher space-missions allowance. None of them are required to start.

The floor is low on purpose. This is geospatial intelligence, GEOINT, and OSINT — without ever talking to a sales team.

6. Talk to it (voice control)

Voice needs an OpenAI key; without one the entire app still runs, the mic just reports voice unavailable. With it, a realtime AI agent gives you twenty-eight tools across four jobs:

  • Direct it — drone-operator camera verbs: “Take me to Tokyo.”, “Orbit around this area slowly.”, “Fly the route we just drew.”
  • Annotate it — a whiteboard over the real world: “Outline the state of Texas.” draws the actual enclosing boundary, not a circle; “How far is the Eiffel Tower from the Louvre?” draws a connector arrow and speaks the distance.
  • Interrogate it — analyst queries against live layers: “How many flights are over Texas right now?”, “Which ships are headed to Oakland?”, “When does the ISS pass over next?”
  • Operate it — the whole console hands-free: “Switch to night vision and turn on the flights layer.”, “Track that plane.”, “Enter Cockpit.”

The agent pulls live scene context before answering — coordinates, street names, active layers, view scale — and at street level reads a viewport screenshot to identify signage, with an explicit instruction never to hallucinate labels. Your OpenAI key never touches the browser; the client only gets a short-lived session token.

7. Under the hood

Some of the engineering that makes it feel real rather than like a tech demo:

  • World-stable icons. Aircraft and ships point along their true real-world heading at every camera angle via per-frame screen-space course projection. No spinning, no viewport-locking.
  • Smooth motion from choppy data. Live feeds arrive every 15–30 seconds; the globe renders one interval behind real time and interpolates between known fixes, with dead reckoning filling the gaps.
  • Honest satellites. SGP4 propagation with orbit rings locked via GMST realignment — no drift, no per-second flicker.
  • Sits on the real ground. Entity heights run through a geoid-aware vertical datum sampled against the rendered terrain mesh — aircraft park on aprons, cameras stand on street corners.
  • Spends your quota like it’s its own. Paid feeds run behind cached, budget-governed proxies — an OpenSky credit governor, a TomTom daily tile budget, disk-cached TLEs — so an afternoon of exploring doesn’t torch an API allowance.
  • Local-first key handling. Secret-bearing providers (OpenAI, AISStream, OpenSky, TomTom, FIRMS) are brokered server-side with allowlisted destinations, bounded requests, and sanitized errors. The only credentials intentionally exposed to the browser are Google Maps and Cesium ion.

8. Privacy and security

By default, nobody else can reach your server — it binds to localhost, and your keys stay on your machine. Sharing on a LAN is possible but an explicit opt-in (--host 0.0.0.0), and it comes with a warning: a LAN-visible server brokers your configured API keys to anyone who can reach it. If you do share, set the per-IP throttles (GEV_RATELIMIT_OPENAI_PER_MIN, GEV_RATELIMIT_GOOGLE_PER_MIN) and — before anything else — provider-side budget caps such as Google Cloud budgets and OpenAI usage limits, because the app-level throttles are guards, not billing caps. The full threat model lives in SECURITY.md.

9. The line it will not cross

God’s Eye View runs on public data, clear sources, and local-first execution — no secrets, no private datasets, no mystery scraping. And it draws an explicit ethical boundary: it models events, assets, infrastructure, and systems — aircraft, vessels, satellites, fires, cameras, cities. It does not build features for named-person search, face recognition, or tracking individuals, and pull requests that cross that line won’t be merged. People are not a query type here.

The project also carries a proper disclaimer: data may be delayed, incomplete, modeled, or wrong — do not use it for navigation, emergency response, medical decisions, or anything safety-critical. It is an exploratory visualization of public data, and it stays that way on purpose.

FAQ

For the details behind the short answers above: the repo’s README is the best single page on the project, the walkthrough video shows everything in motion, and the God’s Eye View series is where the story started. Data-source terms are in DATA_SOURCES.md, and the project newsletter lives at maptheworld.ai — with an interesting teaser: “the present is the cheap part” — history is next, from halfpixel.ai.

Hero image: NASA/NOAA/GSFC/Suomi NPP/VIIRS/Norman Kuring, Public domain, via Wikimedia Commons.

Frequently Asked Questions

Is God's Eye View free?

Yes. The project is open source under the MIT License, and ten of the thirteen live layers work with zero keys or signups. The one required key is Google Maps, which is metered but generous: 1,000 free 3D-tile sessions per month, each good for up to three hours of rendering.

What do I need to run it?

Node.js 24.14.x or 26.x, npm, and a Google Maps API key for the photorealistic planet. Voice control needs an optional OpenAI key. Everything else — flights, satellites, earthquakes, CCTV, radio, bikeshare, space missions — works out of the box with no keys at all.

Do I need an API key for every layer?

No. Most of the globe is green: anonymous flight data, military traffic, satellites, earthquakes, CCTV, radio, bikeshare, space missions, and the bundled datasets all run with zero keys. Optional free keys unlock real traffic (TomTom), global vessels (AISStream), live fires (NASA FIRMS), and Bing imagery (Cesium ion).

Is the data on the globe real?

Yes — it is public signal all the way down. Flights come from OpenSky and adsb.lol transponder feeds, ships from AIS broadcasts, satellites from CelesTrak orbital elements, earthquakes from USGS, fires from NASA FIRMS. Where a layer is modeled rather than live, it is explicitly labeled, such as the reconstructed launch ascents and keyless traffic simulation.

Can other people see my instance?

No. The dev server binds to localhost, so your keys stay on your machine. Sharing over LAN is possible but an explicit opt-in, and the README warns that a LAN-visible server brokers your configured API keys to anyone who can reach it — with per-IP throttles and provider-side budget caps strongly recommended.

Can I track people with it?

No, and that is a deliberate design line. The project models events, assets, infrastructure, and systems — aircraft, vessels, satellites, fires, cameras, cities. It does not build features for named-person search, face recognition, or tracking individuals, and pull requests that cross that line are not merged.

Written by Rasmus

Independent writer of practical how-tos and guides. Every article is written to be genuinely useful — no filler, no recycled content. More about lejnel.com.