bilawalsidhu/gods-eye-viewPublic

A spy satellite simulator in your browser, except the data is real. Live open source spatial intelligence on a photorealistic 3D globe.

AI summary: Browser-based spy satellite simulator offering live open-source spatial intelligence on a photorealistic 3D globe.

Stars
47.4K
+412 today
Forks
9.7K
Watchers
934
Open issues
78
Open PRs
193
Contributors
~30
Commits
517
Branches
11

JavaScriptOtherCreated Jun 22, 2026Last push todayLatest release v0.1.1+3.4K stars this week+29.9K this month

Quick answers

What is gods-eye-view?
Browser-based spy satellite simulator offering live open-source spatial intelligence on a photorealistic 3D globe.
What does gods-eye-view do?
God's Eye View is an interactive, browser-based spatial intelligence simulator that aggregates real-time open-source data onto a photorealistic 3D globe. It visualizes live feeds of aircraft, ships, satellites, earthquakes, and traffic alongside public camera streams. When live video feeds are unavailable, the system intelligently falls back to clearly labeled modeled views to maintain continuous situational awareness. The interface provides hands-free operation through voice control powered by a real-time AI agent. By transforming abstract intelligence signals into a cohesive virtual place, it fundamentally changes how users interact with global data.
Who is gods-eye-view for?
Open-source intelligence analysts, geospatial enthusiasts, and researchers who want to interact with real-time global data streams. It is designed for anyone interested in exploring spatial intelligence through an accessible, web-based 3D interface.
How do I get started with gods-eye-view?
git clone https://github.com/bilawalsidhu/gods-eye-view.git
How popular is gods-eye-view on GitHub?
bilawalsidhu/gods-eye-view has 47,427 stars and 9,669 forks on GitHub, and gained 3,381 stars in the last 7 days.
What license does gods-eye-view use?
bilawalsidhu/gods-eye-view is released under the Other license.

Star history

since Aug 28, 2026
020K40KAug 2026Sep 2026Sep 2026Oct 2026
47.4K stars as of Oct 4, 2026. Measured daily since Aug 28, 2026; GitHub no longer exposes earlier star timestamps.

Contribution activity

commits per day, last 52 weeks
OctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-08: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 0 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 0 commits2026-04-28: 0 commits2026-04-29: 0 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 0 commits2026-05-13: 0 commits2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 0 commits2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 0 commits2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 1 commit2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 0 commits2026-06-30: 0 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 0 commits2026-07-07: 0 commits2026-07-08: 0 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 0 commits2026-07-12: 0 commits2026-07-13: 0 commits2026-07-14: 0 commits2026-07-15: 0 commits2026-07-16: 0 commits2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 0 commits2026-07-22: 0 commits2026-07-23: 0 commits2026-07-24: 0 commits2026-07-25: 0 commits2026-07-26: 0 commits2026-07-27: 0 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 1 commit2026-07-31: 0 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 0 commits2026-08-05: 0 commits2026-08-06: 0 commits2026-08-07: 0 commits2026-08-08: 0 commits2026-08-09: 0 commits2026-08-10: 0 commits2026-08-11: 0 commits2026-08-12: 0 commits2026-08-13: 0 commits2026-08-14: 0 commits2026-08-15: 0 commits2026-08-16: 0 commits2026-08-17: 0 commits2026-08-18: 1 commit2026-08-19: 0 commits2026-08-20: 0 commits2026-08-21: 0 commits2026-08-22: 0 commits2026-08-23: 0 commits2026-08-24: 1 commit2026-08-25: 0 commits2026-08-26: 1 commit2026-08-27: 1 commit2026-08-28: 1 commit2026-08-29: 1 commit2026-08-30: 0 commits2026-08-31: 5 commits2026-09-01: 4 commits2026-09-02: 1 commit2026-09-03: 2 commits2026-09-04: 2 commits2026-09-05: 2 commits2026-09-06: 0 commits2026-09-07: 0 commits2026-09-08: 1 commit2026-09-09: 2 commits2026-09-10: 15 commits2026-09-11: 34 commits2026-09-12: 67 commits2026-09-13: 82 commits2026-09-14: 44 commits2026-09-15: 31 commits2026-09-16: 3 commits2026-09-17: 2 commits2026-09-18: 4 commits2026-09-19: 4 commits2026-09-20: 8 commits2026-09-21: 2 commits2026-09-22: 5 commits2026-09-23: 6 commits2026-09-24: 11 commits2026-09-25: 0 commits2026-09-26: 0 commits2026-09-27: 0 commits2026-09-28: 2 commits2026-09-29: 0 commits2026-09-30: 0 commits2026-10-01: 0 commits2026-10-02: 0 commits2026-10-03: 0 commits
347 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Widely adopted

    47,427 stars

  • Breakout launch

    47,427 stars in 104 days

  • Rising fast

    +3,381 stars this week

  • Actively maintained

    Pushed within 48 hours

  • Outside contributions

    89% of recent commits from the community

  • Repeat trending

    36 trending appearances

What gods-eye-view does

God's Eye View is an interactive, browser-based spatial intelligence simulator that aggregates real-time open-source data onto a photorealistic 3D globe. It visualizes live feeds of aircraft, ships, satellites, earthquakes, and traffic alongside public camera streams. When live video feeds are unavailable, the system intelligently falls back to clearly labeled modeled views to maintain continuous situational awareness. The interface provides hands-free operation through voice control powered by a real-time AI agent. By transforming abstract intelligence signals into a cohesive virtual place, it fundamentally changes how users interact with global data.

Open-source intelligence analysts, geospatial enthusiasts, and researchers who want to interact with real-time global data streams. It is designed for anyone interested in exploring spatial intelligence through an accessible, web-based 3D interface.

  • Photorealistic globe rendering: Displays live global events on a highly detailed 3D representation of the Earth.
  • Real-time asset tracking: Visualizes live data for aircraft transponders, ship beacons, and orbital satellites.
  • Live event monitoring: Tracks and maps real-time occurrences of earthquakes, traffic patterns, and public camera feeds.
  • Voice-controlled navigation: Allows hands-free operation of the interface using an integrated real-time AI agent.
  • Adaptive view modeling: Automatically generates modeled visualizations for locations where live camera feeds are absent.

Where teams use it

Open-source intelligence gathering

Researchers aggregate disparate global signals into a unified visual platform for comprehensive situational awareness.

Aviation and maritime tracking

Enthusiasts monitor live flight paths and maritime vessel movements across the globe.

Global event monitoring

Users observe real-time natural disasters and traffic patterns to understand immediate global impacts.

Interactive geospatial exploration

Educators explore spatial intelligence data dynamically using a hands-free, voice-controlled interface.

Getting started: git clone https://github.com/bilawalsidhu/gods-eye-view.git

README

main branch

🌐 God's Eye View

CI Reached #1 on GitHub Trending

A spy-satellite simulator in your browser — then you realize the sources are public and the data is real.

Photorealistic 3D globe. Live aircraft, ships, satellites, earthquakes, traffic, and public cameras. Hands-free voice control powered by a realtime AI agent.

No place left behind.

Orbital HUD, a tracked live globe, FLIR terrain — then OPEN SOURCED

The God's Eye View video series on YouTube

▶️ From the project behind the viral God's Eye View series (formerly WorldView) — 5M+ on YouTube · 25M+ across socials

🏆 Reached #1 on GitHub Trending, daily and weekly · August 2026

#8 Product of the Day · Hunted by Chris Messina, creator of the hashtag

“pretty cool” — Brendan Eich, creator of JavaScript and co-founder of Mozilla and Brave · Featured on Pinokio

⚡ Start without API keys. Install with Pinokio or run locally from the terminal. Add optional keys inside the app. → Quick Start



🌍 Why This Exists

God's Eye View brings public signals into one explorable globe. Track the world live. Talk to it. Break it. Extend it.

Flight transponders, ship beacons, orbital elements, seismographs, and public cameras already tell us a lot about the world. God's Eye View puts them in the same place, so you can move between a global picture and an individual aircraft, ship, or street. It runs locally in your browser, with source code you can inspect and extend.

Half the magic is that it looks like a forbidden cockpit. The other half is that every line of code is inspectable.

Most feeds are live or regularly refreshed. Traffic is simulated along real roads using aggregate location data. CCTV camera poses and rocket launch trajectories are coarse estimates.

Start with the included data sources, then add your own. Each layer is a separate module.


🎛️ What This Thing Does

  • 🛩️ Cockpit view: Ride inside a tracked flight — the camera holds the terrain under you all the way down.
  • 📡 Contacts: A 250 km roster of everything near your target — step through live aircraft and drop into any cockpit.
  • 🎯 Click-to-track anything: Camera locks on, draws a fading trail, surfaces full metadata — and a tracked fire or vessel hands you off to the nearest live camera in one click.
  • 🖊️ Voice whiteboard: Speak annotations onto the world — real boundary polygons, marks, and routes.
  • 🛫 3D hangar: Real per-class aircraft models — 787, ATR-72, Citation, Bell 206, MQ-9 — and a tracked contact swaps from glyph to 3D model as you close in.
  • 🎨 Reskin reality: GLSL sensor looks over the normal globe — CRT, NVG, FLIR/thermal, Noir, Snow.
  • 🟩 Detection overlay: Screen-space bounding boxes and IDs on everything in view.
  • 🎖️ Military HUD: Tactical heads-up display with intelligence-style telemetry.
  • 🌐 Global Context: Stage the full situational picture with one switch — and get your exact view back when you leave.
  • 🎥 Scene director: Capture cinematic camera tours for clips and demos.
  • 🔗 Share Links: Camera, style, layers, and even one tracked target serialize into a URL — a live target is a handoff, not a bookmark.
  • 🏠 Reset Globe: One control — or one sentence — back to the full Earth.
  • 🌦️ Weather: Animate GFS or ECMWF forecast wind, replay observed radar, satellite clouds and lightning on one timeline, and follow NHC/CPHC cyclone tracks. No key needed.
  • 📷 Mapped ALPR cameras: License-plate-reader camera locations tagged in OpenStreetMap, one city at a time. Locations and tags only; no key needed.
  • 🔭 Satellite passes: Ask by voice when any loaded satellite next rises over you: rise, peak and set times, and whether you can see it.
  • 🔎 Analyst answers: Count, filter and rank satellites, datacenters and dams by voice, alongside flights, ships, fires and quakes; answers say when a feed is stale or on a fallback.
  • 🧭 Tilt and North Up: Switch between straight-down and a 35° oblique, or put north at the top, while a tracked target stays centered.
  • 🔍 Keyless search: Type coordinates or a bundled city or landmark to fly there with no network request; other names use Google when configured, then Photon and Nominatim.
  • 📦 Shareable scenes: Import, preview and share Director scenes as files or bundles, with camera anchors, authored moves and data packs.
  • 🌊 Nepal flood scene: Replay the Bhote Koshi flood: flood path, witness sources and before-and-after imagery (bundled data is non-commercial; see DATA_SOURCES.md).

⚡ Quick Start

Start without an account or API keys. Both paths open the same app with Esri satellite imagery and keyless terrain. OSM is the fallback if Esri is unreachable. Flights, military traffic, satellites, earthquakes, public cameras, radio, and launches are available without keys.

For photorealistic 3D, add a Cesium ion token for eligible personal, non-commercial use, or a Google Maps key for the direct, metered route and Google place search. Provider terms and quotas apply. Add keys through the app's POWER UP panel; Keys & Costs explains the options.

Already installed? Update to the latest version. Older versions query public OpenStreetMap Overpass servers, which now refuse them, so Traffic, Mapped Installations and ALPR stay empty until you update.

Path 1 — One click, no terminal

  1. Install or update Pinokio to 8.2 or later.
  2. Open God's Eye View in Pinokio.
  3. Click Install, then Start.

Available on Windows, macOS, and Linux. The Pinokio maintainer reports cross-platform testing of the fixed installer. The launcher installs the locked dependencies, finds a free local port, and opens the app.

Tried before and installation failed? Update Pinokio and try again. Version 8.2 fixes the launcher installation issue; details from the Pinokio maintainer.

Path 2 — Terminal / coding agent

Use Node.js 24.x (24.14.0 or later) or 26.x. The setup doctor warns about Node 25, which is end-of-life.

git clone https://github.com/bilawalsidhu/gods-eye-view.git
cd gods-eye-view
npm ci
npm run doctor
npm run dev

Open http://localhost:4173. Choose Live Contacts, Space Missions, Environmental, or Explore Manually from the first-run panel.

Startup performance

A point-in-time M5/Chrome capture measured a median 1.86-second cold start. This is a comparison baseline, not a guarantee for your machine or connection. See docs/PERFORMANCE.md.

macOS shortcut: ./scripts/dev-fresh.sh clears the Vite cache and pulls any configured keys straight from the Keychain. It starts keyless too.

Then power it up — in the app, not in a file

Keys are upgrades, not prerequisites. When you want one, click the POWER UP chip in the bottom-right corner: Provider Settings lists every supported key, what it switches on, and where to get it. Paste, hit SAVE KEYS, and the app restarts itself with the new capability on. Once everything is configured the chip reads POWERED UP — and if a compact layout hides it, ?setup=1 reopens the same panel.

  • Where keys land: Pinokio → the app's ignored pinokio/ENVIRONMENT; a terminal clone → the repo-root .env. Either file is made owner-only before a secret is written into it. These are local plaintext files, excluded from Git; the app uses your keys to contact the providers.
  • Keys you already have stay yours: values from your shell or the macOS Keychain show as configured externally and are read-only to the panel.
  • What to get first: the free Cesium ion token (eligible personal, non-commercial use; current terms and quotas apply) for photorealistic 3D and world terrain; a Google Maps key only for the billing-enabled, metered route + Google place search; OpenAI when you want to talk to the world. Full map, costs included, in Keys & Costs.
Older Pinokio versions and credential storage

Do not enter credentials in Pinokio 8.0.40's native Configure panel: that release does not save this nested app file correctly, and it logs submitted values. Use POWER UP → Provider Settings inside GEV instead. The Pinokio 8.2 announcement fixes installation; it does not establish that this separate Configure issue is resolved. On macOS, the Keychain via ./scripts/dev-fresh.sh remains the stronger storage option.

The server binds to localhost on both paths, and Provider Settings answers requests only from your machine. Browser-side keys (Google Maps, Cesium ion) must be restricted at their providers — SECURITY.md shows how, and it carries the LAN-sharing rules alongside Keys & Costs.


🕐 The First Five Minutes

Choose a first-run mission, or try these in order. The GIFs show Google Photorealistic 3D; your starting basemap depends on the keys you've added.

  1. Light up the sky. Take the Live Contacts mission (or turn on Flights yourself) — thousands of live aircraft, gliding on real telemetry, detection mesh already reading the scene. Click one: the camera locks on, a trail draws behind it, and its live telemetry card comes up.
  2. Take the controls. Hit COCKPIT on your tracked plane and ride it down, switching sensors mid-flight: NVG into Ironbow FLIR.

Riding with a live aircraft in cockpit view while switching sensor modes

  1. Drop into a busy airport. Search one and descend to the taxiways with 3D aircraft on — grounded contacts, taxi trails, the whole apron working in real time.

Moving from a full airport overhead down to close taxiway inspection with 3D flight models

  1. Look through a public camera. Turn on Cameras over Austin, London, California, Finland, or Delaware (live video). The feeds aren't webcam embeds — they project into the 3D city. Cycle coverage to VIEWSHED and every camera draws its estimated coverage volume — where it reaches, and where it goes blind.

Diving into an Austin intersection with a live public camera projected into the 3D scene

  1. Track something in orbit. Turn on Satellites and click the ISS — you ride along at orbital distance, orbit ring and all.

Tracking the ISS along its orbital path as it crosses over Ukraine

  1. Switch the optics. Tap 1–7 — CRT, NVG, FLIR — and the whole live planet re-renders through a different sensor.

Cycling a dense live globe through CRT, FLIR, and NVG in one continuous view

  1. Talk to it (needs an OpenAI key): "Take me to LAX and select the nearest airborne aircraft."
  2. Come home. Hit Reset Globe — or just say "zoom out to a globe view."

Keyboard: 1–7 visual styles · H HUD · D detection · C cockpit · ` frame rate · Esc out. Trackpad pinch zooms the globe.


🛩️ The Cockpit

Every plane should let you do this.

Real-time cockpit mode, built from live flight data: the camera rides your contact with real terrain holding underneath, all the way down — sensor styles come along for the ride, and Contacts keeps the 250 km roster one click away: jump plane to plane and fall straight into the next cockpit.

Jumping between live aircraft and falling straight into a cockpit view

The cockpit even carries its own briefing strip: nearby live signals, regional headlines, and real local weather — with an opt-in WX mode that renders volumetric clouds from actual observations around your aircraft.

A live military contact ridden through Normal, NVG, and Ironbow FLIR with dense detection

Why cockpit mode exists: you're riding a real aircraft over real terrain — and you get to pick which sensor you see the world through.


🎙️ Talk to It

Voice needs an OpenAI key. Without one the entire app still runs — the mic button just reports voice is unavailable. The same key drives the AI HUD summary: a terse, five-word intelligence-style readout of the current view that regenerates as you move.

Click GEV MIC, grant the microphone, and just talk. This is more than a voice-controlled remote:

  • 🧠 It knows what it's looking at. The agent pulls live scene context before answering — including coordinates, street names, active layers, and view scale. Ask "what city is this?" mid-flight and it knows.
  • 🎯 Entity Q&A. Click any plane, ship, or datacenter and ask "what's this?" It answers using the object's live telemetry.
  • 👁️ Visual grounding. At street level, it reads a viewport screenshot to identify legible signage and building names, and is instructed never to hallucinate labels.
  • 🎬 Cinematic framing. "Show me the planes overhead" pulls the camera back, angles it, and frames the live traffic like a director.
  • 🔒 Honest and secure. The agent only confirms actions that succeeded. Your OPENAI_API_KEY never touches the browser; the client only gets a short-lived session token.

Twenty-nine tools, four jobs — the commands below come straight from the product's voice test suite and tool playbook:

🎥 Direct it — drone-operator camera verbs:

🗣️ "Take me to Tokyo." · "Orbit around this area slowly." · "Draw the walking route from the Capitol to Zilker Park." → "Fly the route we just drew." · "Zoom out to a globe view."

🖊️ Annotate it — a whiteboard over the real world:

🗣️ "Outline the state of Texas." · "Annotate the Texas State Capitol and its grounds" — it draws the actual enclosing boundary, not a circle. · "How far is the Eiffel Tower from the Louvre?" — a connector arrow appears and it speaks the distance. Everything persists until you say "clear the map."

✍️ Or draw it yourself — DISPLAY ▸ Draw: pick Area, Line or Pin, click the vertices on the real world, double-click to finish, label it. Same whiteboard, same persistence, no microphone needed.

Zilker Park and Lady Bird Lake drawing onto the 3D city as persistent vector annotations, by voice

A spoken distance measurement spanning an airport, inspected from orbit

🔎 Interrogate it — analyst queries against the live layers:

🗣️ "How many flights are over Texas right now?" · "Which ships are headed to Oakland?" · "What is the biggest fire near Los Angeles?" · "Is anything flying above forty thousand feet?" · "When does the ISS pass over next?" · "How many datacenters are in view?"

🎛️ Operate it — the whole console, hands-free:

🗣️ "Switch to night vision and turn on the flights layer." · "Turn on the camera viewsheds." · "Play a news radio station near Austin." · "Track that plane." → "Enter Cockpit."

And the rapid-fire tier — one sentence each:

🗣️ "Show me global infrastructure." (stages the layers and pulls back to the globe) · "Play Orbital Watch." (a full cinematic scene) · "Set detection density to fifty percent." · "Next contact — helicopters only." (mid-cockpit) · "Show me space missions." · "Switch to OSM." · "Sharpen the image a touch." · "Switch to the tactical layout." · "What's turned on right now?"

The globe populating with the world's radio stations as another live layer

Ask for radio near anywhere and the globe starts broadcasting — every station is a real place you can fly to.


🛰️ What's on the Globe

Nineteen layers and map sources. Seventeen have a keyless path. Some offer additional capabilities with a provider key. (🟢 no key · 🟡 free key · 🔴 metered.)

Layer What you get Source Auth
🗺️ Map Stack Esri satellite imagery, Google Photorealistic 3D, OSM, plus additional ion-hosted stacks Esri / Google / Ion / OSM 🟢 Esri satellite + OSM · 🟡 ion-hosted Google 3D + world terrain · 🔴 direct Google + place search
✈️ Live Flights 11,000+ live aircraft + route history OpenSky + adsb.lol 🟢 (🟡 optional for more polling credits)
🎖️ Military Flights ADS-B military traffic in amber adsb.lol 🟢
🚢 Live Vessels Thousands of ships worldwide AISStream 🟡
🛰️ Satellites 838-object catalog, color-coded by class with a live legend — the DENSE chip drops in the whole Starlink shell CelesTrak 🟢
🌍 Earthquakes Global seismic activity, last 24h USGS 🟢
🚗 Traffic Simulated vehicles on OSM roads. With TomTom, live flow speeds drive the simulation and congestion colors below ~8 km; individual vehicle positions are not live observations TomTom + OSM 🟢 simulation · 🟡 live flow speeds
📹 CCTV Mesh ~3,600 public cameras projected into the 3D space — Austin · Texas (TxDOT) · California (Caltrans) · London (TfL) · Ontario (511) · Finland (Fintraffic) · British Columbia (DriveBC) · Estonia (Tallinn, Tarktee) · Delaware (DelDOT live video) · New South Wales (Live Traffic NSW) · Calgary. Positions are published; poses are estimated priors you calibrate by dragging a gizmo on the camera itself City APIs 🟢
📷 Mapped ALPR Cameras License-plate-reader camera locations tagged by OpenStreetMap contributors, loaded one city-sized view at a time, with SHOW NEAREST. Locations and tags only: no plate data, no video OpenStreetMap (incl. DeFlock mapping) 🟢
📻 Radio Geolocated world radio with an analog tuner — drag the needle across up to 750 stations and the globe flies to each broadcaster Radio Browser / broadcasters 🟢
🚌 Transit Live buses, trams, metros, trains and ferries with delayed playback between reports, selected-vehicle trails, and mode-coloured DETECT labels — Boston, Austin, Minneapolis, Helsinki, the Netherlands, Norway, South East Queensland Operator GTFS-Realtime feeds 🟢
🚲 Bikeshare Live station availability GBFS 🟢
🧭 Directions Click A and B on the globe for a street-following drive, walk or cycle route draped on the terrain with turn-by-turn steps — then FLY the camera along it. No key, no geocoder, no mic OSRM on FOSSGIS servers (OpenStreetMap) 🟢
🔥 Active Fires Live NASA FIRMS detections, trailing 24h NASA FIRMS 🟡
🚀 Space Missions Rolling 30-day launches with payload, stage, and recovery detail Launch Library 2 🟢 (🟡 optional token raises the allowance)
🎖️ Mapped Installations Viewport-bounded military-site context from community mapping — incomplete by nature, and labeled that way OpenStreetMap 🟢
🌬️ Wind Animated 10 m forecast wind with an optional speed, temperature or pressure color field and a reading at map center NOAA GFS / ECMWF IFS 🟢
🌦️ Observed Weather Rain radar (contiguous US), Satellite clouds (GOES regional or global infrared, Clouds only or Full image) and Lightning density (Americas and Pacific) on one history timeline NOAA nowCOAST 🟢
🌀 Cyclones Advisory positions, forecast tracks and uncertainty cones for the Atlantic and eastern/central North Pacific NOAA NHC / CPHC 🟢

Weather, keyless. Wind animates 10 m forecast flow from NOAA GFS or ECMWF IFS, with an optional color field and a reading at map center. Rain radar, Satellite clouds and Lightning density are observations on one history timeline in the WEATHER panel (step back, Play, Latest); Cyclone advisories draw NHC and CPHC positions, forecast tracks and cones. On Google 3D Tiles the observed layers float above the city as translucent shells, sharpened around your view.

In the app, Data Layers groups them as Movement, Cameras, Infrastructure, Events, Weather and Utilities.

The basemap ladder — what each tier buys you:

You have The globe you get
🟢 Nothing Esri World Imagery satellite basemap + keyless terrain, in 2D. OSM takes over automatically if Esri is unreachable; if terrain is unavailable the globe continues without it
🟡 A free Cesium ion token Google Photorealistic 3D cities and world terrain — eligible personal, non-commercial use; current ion terms and quotas apply
🔴 A Google Maps key The same 3D direct from Google, plus Google place search — the billing-enabled, metered route

A reconstructed Falcon 9 ascent climbing and curving into its projected orbit

The Space Missions layer replaying a Falcon 9 ascent — labeled RECONSTRUCTED ESTIMATE, scrubbable 0.25×–4×.

Also on the globe: neighborhood overlays · an optional cockpit WX cloud effect. Bundled static infrastructure: Datacenters (4,351), Dams (704), and Submarine Cables (712).

Diving into the Bahamas and revealing labeled submarine cable routes beneath the globe

Missing a layer you want? Open an issue — or add it and send the PR.


🎖️ Field Missions

Once the basics click, run these:

Mission How
🚁 Ask the planet "Why are all these military helicopters flying in circles?" Select a military track — it silently backfills ~24 h of real trace history — and see what it's been doing, resolved as stacked 3D loops.
✈️ Final approach Click-track an airliner lining up for a runway, hop into the cockpit, and ride it down.
🌃 Night watch Fly to your own city, switch to NVG, and let the detection mesh and HUD read the scene.
🚢 Port call Vessels on over the Port of Long Beach. Click a tanker for its tactical card and wake trail — then hit NEAREST in the CCTV panel and look at the same water through a public camera.
📻 Tokyo FM Orbit Shibuya with the Radio layer on — then drag the analog tuner needle: every position snaps to a real station and the globe flies to whoever's broadcasting.
🔥 Fire line FIRMS over California. Click a detection — the camera dives to it — read the intensity, then hit NEAREST in the CCTV panel for a ground view.
🚶 Ask for a walking route 🎙️ Tell the world where you want to go and watch a real street-following route trace itself through the 3D city — then "fly it": banked turns, eased ends, a camera that leads the path like a drone shot.
📏 Measure LAX to DFW 🎙️ "How far is LAX from DFW?" — an arrow spans the country, the distance lands in the caption, and the endpoints stay pinned to the real world as you orbit.
🚀 Launch replay Open Space Missions, pick a launch from the last 30 days, and ride the T-minus countdown through ascent to orbit — scrub it at 0.25×–4×. Labeled RECONSTRUCTED ESTIMATE, because it is one.
🪦 Walk the boneyard Fly from regional context down into dense, fully resolved rows of retired aircraft.
🏗️ Orbit Three Gorges Sweep the dam and its terrain at a glance — then flip on the Dams layer and find 703 more.

🎙️ = voice missions — they need an OpenAI key.

Resolving a selected aircraft's recent flight path into stacked 3D loops above the terrain

Ask the planet: a military contact's last ~24 hours of real trace history, resolved as stacked 3D loops.

Asking for a walking route and flying the generated path through the 3D city

"Draw the walking route… now fly it" — banked turns, eased ends, the camera leading the path like a drone shot.

Descending from regional context into dense rows of retired aircraft at the boneyard

Walk the boneyard: rows of retired airframes, fully resolved in 3D.


🔧 Under the Hood

How the globe handles live data:

  • World-stable icons. Aircraft and ships point along their true real-world heading at every camera angle — tracked or not, looking straight down or across the horizon — via per-frame screen-space course projection. No spinning, no viewport-locking.
  • Smooth motion from choppy data. Live feeds arrive every 15–30s; the globe renders one interval behind real time and interpolates between known fixes. Dead reckoning fills the gaps.
  • Honest satellites. SGP4 propagation with orbit rings that stay locked to their satellites via GMST realignment — no drift, no per-second flicker.
  • Sits on the real ground. Entity heights are aligned to work with Google 3D tiles, so aircraft park on aprons and cameras stand on street corners instead of floating.
  • Caching and request budgets. An OpenSky credit governor, a TomTom daily tile budget, and disk-cached TLEs reduce repeated requests. These controls do not replace provider quotas or billing controls.
  • Server-side credentials. Every API that touches a private key (OpenAI, AISStream, OpenSky OAuth, camera frames) is brokered through a hardened server-side proxy with SSRF protection, response caps, and sanitized errors. The only keys the browser sees are Google Maps and Cesium ion (restrict both at the provider).
  • No framework. Vanilla JavaScript, CesiumJS, and Vite — plus Google Photorealistic 3D Tiles for the planet and the OpenAI Realtime API for voice. Fast to read, fast to hack on.
src/
├── main.js                 # Bootstrap: Google 3D tiles, layer registration
├── ui.js                   # Runtime UI — panels, HUD, styles, control facade
├── hud.js                  # Intelligence HUD + AI scene summary
├── keySetup.js             # POWER UP panel — in-app provider keys (dev server only)
├── mapStackController.js   # Basemap switching — Google 3D / Esri / OSM / ion stacks
├── voice/                  # OpenAI Realtime session + 29 voice tools
├── layers/                 # Layer components — weather, wind, cyclones, transit, ALPR, …
├── data/                   # One module per layer + orchestration + context store
│   ├── iconOrientation.js  # Screen-projected headings + horizon cull
│   └── local_data/         # Bundled datasets (per-folder provenance)
└── scenes/                 # Cinematic scene director

See docs/CURRENT-STATE.md for the authoritative runtime reference.


🔑 API Keys

🟢 No key · 🟡 Free key · 🔴 Metered

Use POWER UP → Provider Settings to add keys. The tables below explain what each provider enables; none is required to start. See the setup instructions for storage and configuration details.

No key needed for Wind, Rain radar, Satellite clouds, Lightning density, Cyclone advisories, Mapped ALPR Cameras, Transit, Directions, Delaware live video, and coordinate or bundled-place search. A layer row waiting on a key names it.

Choose the capabilities you want

Six keys. Four have a free tier, and the two 🔴 ones are metered:

Key Why Get it
🟡 Cesium ion 🗺️ Google Photorealistic 3D, world terrain, and additional ion-hosted imagery stacks. The free Community plan is for eligible individual, personal/non-commercial use and has quotas cesium.com/ion — use a public assets:read token and check current pricing/eligibility
🔴 Google Maps Direct Google Photorealistic 3D + Google place search (Map Tiles API) Google Cloud Console — URL-restrict it
🔴 OpenAI 🎙️ The voice experience + AI HUD summary. The mini model works; the standard model is noticeably smarter. Want Gemini or another provider behind the mic? PRs welcome platform.openai.com — metered, see costs below
🟡 AISStream 🚢 Live global ships aisstream.io — free signup
🟡 NASA FIRMS 🔥 Live active fires firms.modaps.eosdis.nasa.gov — free
🟡 TomTom 🚦 Live flow speeds and congestion colors for the simulated traffic layer developer.tomtom.com — free tier available

Diving from city-scale live congestion straight into an intersection's public camera

What the TomTom key buys you: rush-hour density painted on the city — then dive from the jam straight into the camera watching it.

Cherry on top

Key Why Get it
🟡 OpenSky ✈️ More flight-polling credits (🟢 anonymous works without) opensky-network.org
🟡 Launch Library 2 🚀 Higher space-missions request allowance (🟢 works without) thespacedevs.com

Add these if you need higher polling allowances.

npm run doctor reports Node/npm readiness, the primary provider routes, and where each configured provider was found without printing credential values. On macOS its Keychain-aware result previews ./scripts/dev-fresh.sh; plain npm run dev reads only explicit environment and Vite dotenv values. The OpenSky summary reports keyless anonymous access for explicit anon or an OAuth mode without a client pair, retains presence-only wording for a complete OAuth pair, and identifies selected Basic or auto mode without guessing which credentials runtime will accept. Basic and credentials-file modes remain advanced dev-fresh.sh configuration.

Advanced setup: environment variables and macOS Keychain

For headless machines, coding agents, or scripted setups:

# Put keys in .env (see .env.example), or pass them as env vars:
OPENAI_API_KEY="…" AISSTREAM_API_KEY="…" npm run dev -- --host localhost --port 4173

# On macOS, store any of them in the Keychain and dev-fresh.sh pulls them in:
security add-generic-password -U -s "google-maps-api" -a "api-key" -w
security add-generic-password -U -s "openai-api"      -a "api-key" -w
security add-generic-password -U -s "aisstream-api"   -a "api-key" -w
security add-generic-password -U -s "firms-map"       -a "map-key" -w
security add-generic-password -U -s "cesium-ion"      -a "token"   -w

OpenSky can run fully anonymous (OPENSKY_AUTH_MODE=anon), or import OAuth credentials with ./scripts/opensky-import-client.sh /path/to/credentials.json.

Live video cameras (HLS)

CCTV sources with "feedType": "hls" and a registered HTTP(S) .m3u8 URL play through a lazily loaded hls.js decoder shared by the monitor plane and panel. DelDOT uses its official HTTPS HLS catalog links. Disable that pack with CCTV_DELDOT_ENABLED=0.

The server allows two concurrent sessions. Each retains at most 12 segments and 24 MiB in memory; individual downloads are capped at 4 MiB with a ten second deadline. There are no segment files or ffmpeg processes. Redirects, off-origin references, encrypted playlists and non-MPEG-TS segments are refused. Each decoder has its own client lease (at most eight per session), including native HLS. Closing it releases only that lease; abandoned leases expire after 15 seconds without access. The last release stops upstream work. Failed live video uses the existing still/Street View/synthetic fallback, which is not live video. RTMP-only sources are not supported by this integration.

💸 What it actually costs

Honest numbers, roughly, as of mid-2026 — always check the provider pricing pages:

Cost reality
🟢 Most layers $0, no signup. OpenSky anon, USGS, CelesTrak, adsb.lol, city CCTV, Radio Browser, GBFS, Launch Library 2, transit feeds, OSRM routing, NOAA and ECMWF weather, OpenStreetMap ALPR mapping, bundled datasets.
🟡 The free-key tier $0 with a signup. AISStream, FIRMS, TomTom, OpenSky, plus Cesium ion for eligible personal/non-commercial use. Provider quotas and eligibility still apply.
🗺️ Google 3D tiles Free through an eligible Cesium ion Community account within its quota; metered through a direct Google key. Use the direct route for Google place search or commercial deployment, verify current provider terms, and set budget alerts where billing is enabled.
🔴 OpenAI voice The one that costs real money — so the app meters it for you. Realtime audio runs a few cents per active minute; an evening of heavy use is single-digit dollars. A live session-spend readout sits next to the mic, with an STD/MINI model toggle, a $2 warning, and a $5 hard cap that ends the session. The voice context window is kept deliberately short too.

Google's direct 3D route is surprisingly generous: the first 1,000 Photorealistic 3D Tiles sessions each month are currently free, and one root request supports roughly three hours of rendering. A solo user exploring sparingly can realistically stay inside the free usage cap. Billing must still be enabled, so restrict the key and set a quota or budget alert. Check Google's current pricing before relying on these figures.

🧗 The floor is low on purpose

Everything above is the deliberately cheap baseline — enough to get a real taste of geospatial intelligence, GEOINT, and OSINT without ever talking to a sales team. You'll also notice the ceiling: terrestrial AIS goes quiet mid-ocean and satellite AIS costs real money; premium imagery, SAR, and the deeper commercial feeds live behind enterprise contracts. That's not a limit of the architecture — every layer here is a pattern you can point at your own data sources. This repo hands you the foundation; what you fuse into it is up to you.

🔒 Sharing an instance

By default nobody else can reach your server — it binds to localhost. To share on your LAN, opt in explicitly (npm run dev -- --host 0.0.0.0 --port 4173, or HOST=0.0.0.0 ./scripts/dev-fresh.sh on macOS/Linux) — but know that ⚠️ a LAN-visible server brokers your configured API keys to anyone who can reach it. Set the per-IP throttles (GEV_RATELIMIT_OPENAI_PER_MIN, GEV_RATELIMIT_GOOGLE_PER_MIN — see .env.example) and, before anything else, configure provider quotas, usage limits, and billing alerts: app-level throttles are not billing caps, and a budget alert alone does not stop spending. Full threat model in SECURITY.md.

Provider Settings is disabled when the server is shared, so remote users cannot access the key-entry panel.

Pinokio LAN and Cloudflare sharing remain disabled for this launcher. Use a separately reviewed authentication proxy if remote access is required. SECURITY.md explains the restrictions and threat model.


📋 Responsible & Open

God's Eye View runs on public data, clear sources, and local-first execution. No secrets, no private datasets, no mystery scraping — anything involving a private key is brokered server-side. It has the visual grammar of a classified ops room, built entirely from open signals and inspectable code.

The line. This 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 won't be merged. People are not a query type here.

Come build it. This is the canonical live 3D client from the project that kicked off the recent wave of spatial-intelligence tools — and it's a canvas: the layers here are the signals one person could find and fuse. Add a city pack, a data source, a style, a voice tool. It's the window through which you see the world; bring that window to others.

Status: An evolving open-source client for exploration and learning — a fast, hackable foundation, not a hardened production service. Released under the MIT License. Bundled and live datasets carry their own terms — see DATA_SOURCES.md. Security model: SECURITY.md. Want to contribute? CONTRIBUTING.md.

Maintainers: Bilawal Sidhu and Sameh Khamis at Halfpixel.

Media note: the capture GIFs on this page show Google Photorealistic 3D Tiles and live data layers, used promotionally with in-frame attribution; they aren't licensed for standalone reuse. See media provenance and permissions; full source terms in DATA_SOURCES.md.

Important

God's Eye View is an exploratory visualization of public and third-party data. Data may be delayed, incomplete, modeled, inferred, or wrong. Do not use it for flight or maritime navigation, emergency response, medical or health decisions, investment decisions, or other safety-critical or operational purposes. Verify important information with authoritative sources.


🧭 What's Next

First — thank you. To everyone who watched the God-view demos and went off to build their own, and to everyone who kept asking for the code: I'm grateful. And when I polled whether this should go open source, you weren't subtle about it:

Community survey on open-sourcing God's Eye View

So here it is. Step inside the spy-thriller cockpit — except the data is real — and let's turn this into our shared sandbox for making sense of the world, and have fun doing it. This repo is the baseline, it stays open, and the whole point is for you to break things and bolt on layers we haven't thought of yet.

One heads-up from the inside: build in this space for a week and you learn that the present is the cheap part. The moment you try to go back in time — tiling, serving, and scrubbing what happened and what changed at any real resolution — the data gets expensive and the compute gets brutal. That's the long game.

Update — a hosted version is coming. We originally planned to keep this repository as the open-source client and build a separate professional product. Then the launch happened, and the loudest request wasn't another feature — it was "just give me a link." So we're building an official hosted God's Eye View at Halfpixel: no installation, just open it in your browser. The hosted version is the easiest way into this open-source project. More soon.


▶️ Watch the God's Eye View series · 📬 Map the World — the newsletter behind the project

🌐 God's Eye View. No place left behind.

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

2 total
  1. v0.1.1 is a reliability patch for one-click setup and live-data ingestion. ## Fixed - **Pinokio setup:** Completed clean installs now expose **Start** instead of returning to **Install**. - **macOS keyless launch:** `./scripts/dev-fresh.sh` no longer crashes under the stock Bash 3.2 runtime when no provider keys are exported. - **Active Fires:** All three VIIRS source batches are retained when global record counts exceed the JavaScript engine's argument limit. - **GBFS safety:** Response-size limits are now measured in bytes, including multi-byte upstream payloads. ## Documentation - Tightened the README opening around keyless setup, data freshness, modeled experiences, and the accessibility of the provider stack. ## Community Thank you to: - @yangsongsf for the Active Fires fix in #93. - @prajwal-raj for the GBFS byte-limit fix in #45. - @manjunath22466 for the Pinokio lifecycle fix and real-device validation carried by #152. Their contributor credit remains intact in this release. ## Verification - Node 24.14, Node 26.x, and Windows onboarding CI passed. - Unit suite: 2675 passed, 0 failed, 1 intentional Node-version skip. - Production build passed. - Tracking regressio

  2. The first formal release: one-click install, a keyless boot that lands on a real satellite globe, and in-app key management. **Get started in one click → [Quick Start](https://github.com/bilawalsidhu/gods-eye-view#-quick-start)** — no keys, no signup, no config file. ## Highlights - **One-click install** via Pinokio. Keyless boot lands on live Esri World Imagery with keyless terrain; OSM takes over automatically if Esri is unreachable, and the globe continues without terrain if its source is unavailable. - **Provider Settings** (the POWER UP panel): add, replace, or remove API keys inside the app. Credential files are made owner-only before any secret is written — verified on macOS and Windows — and keys configured outside the panel are shown read-only. The panel answers only local, unproxied requests and disables itself whenever the server is shared. - **Keyless capability responses**: the optional HUD summary and place-search endpoints return a deliberate "not configured" success instead of errors, without consuming rate-limit quota. - **Aircraft-identity voice answers** explicitly cover operator, type, and route, and say so plainly when enrichment is unavailable. - **README r

Code frequency

additions and deletions
+300.2K-300.2KWeek of 2026-06-21: +20 linesWeek of 2026-06-21: -0 linesWeek of 2026-06-28: +0 linesWeek of 2026-06-28: -0 linesWeek of 2026-07-05: +0 linesWeek of 2026-07-05: -0 linesWeek of 2026-07-12: +0 linesWeek of 2026-07-12: -0 linesWeek of 2026-07-19: +0 linesWeek of 2026-07-19: -0 linesWeek of 2026-07-26: +19 linesWeek of 2026-07-26: -3 linesWeek of 2026-08-02: +0 linesWeek of 2026-08-02: -0 linesWeek of 2026-08-09: +0 linesWeek of 2026-08-09: -0 linesWeek of 2026-08-16: +2 linesWeek of 2026-08-16: -1 linesWeek of 2026-08-23: +220,677 linesWeek of 2026-08-23: -99 linesWeek of 2026-08-30: +7,915 linesWeek of 2026-08-30: -1,139 linesWeek of 2026-09-06: +49,031 linesWeek of 2026-09-06: -29,793 linesWeek of 2026-09-13: +300,199 linesWeek of 2026-09-13: -105,893 linesWeek of 2026-09-20: +70,196 linesWeek of 2026-09-20: -1,399 linesWeek of 2026-09-27: +26,668 linesWeek of 2026-09-27: -1,976 linesJun 21, 2026Sep 27, 2026
+674.7K lines added, -140.3K removed over the last year.

Commits per week

last 52 weeks
1700Week of 2025-10-05: 0 commitsWeek of 2025-10-12: 0 commitsWeek of 2025-10-19: 0 commitsWeek of 2025-10-26: 0 commitsWeek of 2025-11-02: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 0 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 0 commitsWeek of 2026-04-19: 0 commitsWeek of 2026-04-26: 0 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 0 commitsWeek of 2026-05-17: 0 commitsWeek of 2026-05-24: 0 commitsWeek of 2026-05-31: 0 commitsWeek of 2026-06-07: 0 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 1 commitsWeek of 2026-06-28: 0 commitsWeek of 2026-07-05: 0 commitsWeek of 2026-07-12: 0 commitsWeek of 2026-07-19: 0 commitsWeek of 2026-07-26: 1 commitsWeek of 2026-08-02: 0 commitsWeek of 2026-08-09: 0 commitsWeek of 2026-08-16: 1 commitsWeek of 2026-08-23: 5 commitsWeek of 2026-08-30: 16 commitsWeek of 2026-09-06: 119 commitsWeek of 2026-09-13: 170 commitsWeek of 2026-09-20: 32 commitsWeek of 2026-09-27: 2 commitsOct 5, 2025Sep 27, 2026
347 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 6 commitsSun 1:00 — 6 commitsSun 2:00 — 6 commitsSun 3:00 — 6 commitsSun 4:00 — 6 commitsSun 5:00 — 4 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 2 commitsSun 9:00 — 6 commitsSun 10:00 — 8 commitsSun 11:00 — 0 commitsSun 12:00 — 2 commitsSun 13:00 — 2 commitsSun 14:00 — 3 commitsSun 15:00 — 4 commitsSun 16:00 — 3 commitsSun 17:00 — 6 commitsSun 18:00 — 3 commitsSun 19:00 — 6 commitsSun 20:00 — 3 commitsSun 21:00 — 4 commitsSun 22:00 — 3 commitsSun 23:00 — 1 commitsMon 0:00 — 0 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 1 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 0 commitsMon 11:00 — 0 commitsMon 12:00 — 1 commitsMon 13:00 — 3 commitsMon 14:00 — 2 commitsMon 15:00 — 4 commitsMon 16:00 — 3 commitsMon 17:00 — 5 commitsMon 18:00 — 1 commitsMon 19:00 — 16 commitsMon 20:00 — 4 commitsMon 21:00 — 11 commitsMon 22:00 — 3 commitsMon 23:00 — 1 commitsTue 0:00 — 0 commitsTue 1:00 — 0 commitsTue 2:00 — 1 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 2 commitsTue 6:00 — 0 commitsTue 7:00 — 6 commitsTue 8:00 — 5 commitsTue 9:00 — 1 commitsTue 10:00 — 1 commitsTue 11:00 — 2 commitsTue 12:00 — 4 commitsTue 13:00 — 1 commitsTue 14:00 — 4 commitsTue 15:00 — 1 commitsTue 16:00 — 2 commitsTue 17:00 — 3 commitsTue 18:00 — 2 commitsTue 19:00 — 4 commitsTue 20:00 — 2 commitsTue 21:00 — 0 commitsTue 22:00 — 0 commitsTue 23:00 — 1 commitsWed 0:00 — 0 commitsWed 1:00 — 0 commitsWed 2:00 — 0 commitsWed 3:00 — 0 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 0 commitsWed 11:00 — 1 commitsWed 12:00 — 1 commitsWed 13:00 — 0 commitsWed 14:00 — 2 commitsWed 15:00 — 3 commitsWed 16:00 — 1 commitsWed 17:00 — 0 commitsWed 18:00 — 1 commitsWed 19:00 — 1 commitsWed 20:00 — 2 commitsWed 21:00 — 1 commitsWed 22:00 — 0 commitsWed 23:00 — 0 commitsThu 0:00 — 1 commitsThu 1:00 — 1 commitsThu 2:00 — 0 commitsThu 3:00 — 1 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 1 commitsThu 10:00 — 1 commitsThu 11:00 — 0 commitsThu 12:00 — 0 commitsThu 13:00 — 0 commitsThu 14:00 — 1 commitsThu 15:00 — 3 commitsThu 16:00 — 1 commitsThu 17:00 — 0 commitsThu 18:00 — 0 commitsThu 19:00 — 3 commitsThu 20:00 — 0 commitsThu 21:00 — 2 commitsThu 22:00 — 11 commitsThu 23:00 — 6 commitsFri 0:00 — 4 commitsFri 1:00 — 0 commitsFri 2:00 — 0 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 1 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 1 commitsFri 9:00 — 1 commitsFri 10:00 — 0 commitsFri 11:00 — 0 commitsFri 12:00 — 1 commitsFri 13:00 — 5 commitsFri 14:00 — 3 commitsFri 15:00 — 1 commitsFri 16:00 — 3 commitsFri 17:00 — 3 commitsFri 18:00 — 4 commitsFri 19:00 — 6 commitsFri 20:00 — 1 commitsFri 21:00 — 6 commitsFri 22:00 — 1 commitsFri 23:00 — 0 commitsSat 0:00 — 0 commitsSat 1:00 — 0 commitsSat 2:00 — 0 commitsSat 3:00 — 2 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 1 commitsSat 10:00 — 0 commitsSat 11:00 — 1 commitsSat 12:00 — 8 commitsSat 13:00 — 5 commitsSat 14:00 — 1 commitsSat 15:00 — 3 commitsSat 16:00 — 5 commitsSat 17:00 — 3 commitsSat 18:00 — 2 commitsSat 19:00 — 3 commitsSat 20:00 — 7 commitsSat 21:00 — 5 commitsSat 22:00 — 16 commitsSat 23:00 — 12 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits57 (11%)
Community commits460 (89%)

517 commits in total over the last year.

DateListRankStars gained
Oct 4, 2026monthly#1+30,444
Oct 3, 2026monthly#1+31,110
Oct 2, 2026monthly#1+31,240
Oct 1, 2026monthly#1+31,402
Sep 30, 2026monthly#1+33,308
Sep 29, 2026monthly#1+34,455
Sep 28, 2026monthly#2+37,567
Sep 27, 2026monthly#1+38,582
Sep 26, 2026monthly#1+40,403
Sep 25, 2026monthly#1+41,715
Sep 24, 2026monthly#1+41,118
Sep 23, 2026monthly#1+40,639
Sep 22, 2026weekly#9+8,111
Sep 21, 2026weekly#9+8,111
Sep 20, 2026weekly#6+10,207
  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    272.8K stars · JavaScript

  • react/react

    The library for web and native user interfaces.

    250.9K stars · JavaScript

  • DietrichGebert/ponytail

    Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

    154.6K stars · JavaScript

  • vercel/next.js

    The React Framework

    143.2K stars · JavaScript

  • addyosmani/agent-skills

    Production-grade engineering skills for AI coding agents.

    101.1K stars · JavaScript

  • ruvnet/RuView

    π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.

    96.4K stars · Rust