gods-eye-view:基于 Go 的上帝视角世界视图项目

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

分支30Tags5

🌐 God's Eye View

CI Reached #1 on GitHub Trending

浏览器里的间谍卫星模拟器——直到你发现,数据源全是公开的,而数据是真实的。

照片级真实感的 3D 地球。实时航班、船舶、卫星、地震、交通与公共摄像头。由实时 AI 智能体驱动的免提语音操控。

没有一片土地被遗忘。

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

The God's Eye View video series on YouTube

▶️ 源自爆款 God's Eye View 系列背后的项目 (原名 WorldView) — YouTube 播放量 500 万+ · 全社交平台 2500 万+

🏆 GitHub Trending 日榜与周榜均登顶 · 2026 年 8 月

#8 当日最佳产品 · 由 Chris Messina(# 标签的发明者)亲自推荐

"相当酷" — Brendan Eich,JavaScript 之父,Mozilla 与 Brave 联合创始人 · 被 Pinokio 收录

⚡ 无需 API Key 即可启动。 通过 Pinokio 一键安装,或在终端本地运行。可选 Key 在应用内配置。 → 快速上手



🌍 缘起

God's Eye View 将公开信号汇聚到一颗可探索的地球上。实时追踪世界,与它对话,解构它,扩展它。

航班应答器、船舶信标、轨道根数、地震仪和公共摄像头,早已在向我们揭示这个世界的诸多面貌。God's Eye View 将它们汇聚于同一空间,让你在宏观全貌与单架飞机、单艘船舶、单条街道之间自由切换。它完全在浏览器本地运行,源代码可审查、可扩展。

一半的魔力在于它看起来像一台禁忌的驾驶舱,另一半在于每一行代码都可以审查。

大多数数据源为实时或定期刷新。交通数据基于聚合位置信息,沿真实道路模拟。CCTV 摄像头姿态和火箭发射轨迹为粗略估计。

从内置数据源起步,再添加你自己的。每一层都是一个独立模块。


🎛️ 功能概览

  • 🛩️ 驾驶舱视角: 坐进一架正在追踪的航班——镜头始终将地形托在脚下,一路俯冲到底。
  • 📡 目标清单: 以目标为中心、250 公里范围内的全量目标列表——逐一切换实时航班,随时切入任意驾驶舱。
  • 🎯 点击即追踪任意目标: 镜头自动锁定,绘制渐隐航迹,展开完整元数据——追踪中的火点或船舶可一键交接至最近的实时摄像头。
  • 🖊️ 语音白板: 用语音在世界地图上标注——真实的边界多边形、标记和航线。
  • 🛫 3D 机库: 真实的分机型飞机模型——787、ATR-72、Citation、Bell 206、MQ-9——当追踪目标靠近时,从图标自动切换为 3D 模型。
  • 🎨 传感器滤镜: GLSL 传感器效果覆盖普通地球——CRT、NVG、FLIR/热成像、黑白、雪景。
  • 🟩 检测叠加层: 画面内所有目标均显示屏幕空间 bounding box 和 ID。
  • 🎖️ 军事 HUD: 战术平视显示器,配备情报风格遥测数据。
  • 🌐 全局态势: 一键切换至完整态势画面——离开后自动恢复你离开时的视角。
  • 🎥 场景导演: 录制电影级镜头运动,用于剪辑和演示。
  • 🔗 分享链接: 镜头、风格、图层甚至单个追踪目标均可序列化为 URL——一个实时目标是一次交接,而非一个书签。
  • 🏠 重置地球: 一个控件——或一句话——回到完整地球。
  • 🌦️ 天气: 动画播放 GFS 或 ECMWF 预报风场,回放观测雷达、卫星云图和闪电,统一时间轴,追踪 NHC/CPHC 气旋路径。无需 API Key。
  • 📷 已标注 ALPR 摄像头: 在 OpenStreetMap 中标记的车牌识别摄像头位置,逐城开放。仅含位置和标签,无需 API Key。
  • 🔭 卫星过境: 用语音询问任意已加载卫星下一次何时从你头顶升起:升起、最高点和落下时间,以及你是否能看到它。
  • 🔎 分析师问答: 用语音对卫星、数据中心和大坝进行计数、筛选和排序,同时覆盖航班、船舶、火点和地震;回答会说明数据源是否过期或正在使用备用源。
  • 🧭 倾斜与正北朝上: 在垂直俯瞰和 35° 斜视之间切换,或将正北置于顶部,追踪目标始终保持在画面中心。
  • 🔍 免 Key 搜索: 输入十进制坐标、二维 WGS84 geo: URI(例如 geo:39.7392,-104.9903),或内置城市/地标即可直接飞行前往,无需地理编码请求;其他地名在配置后使用 Google,再回退至 Photon 和 Nominatim。
  • 📦 可分享场景: 以文件或 bundle 形式导入、预览和分享 Director 场景,包含镜头锚点、预设运镜和数据包。
  • 🌊 尼泊尔洪灾场景: 回放 Bote Koshi 洪灾:洪水路径、目击者信源及前后对比影像(内置数据仅限非商业用途,详见 DATA_SOURCES.md)。

⚡ 快速开始

无需注册账号或 API 密钥即可开始。 两种路径都能打开同一个应用,使用 Esri 卫星影像和无密钥地形数据。如果 Esri 无法访问,OSM 将作为备选。航班、军事交通、卫星、地震、公共摄像头、无线电和发射数据均无需密钥即可使用。

如需照片级逼真的 3D 效果,可添加 Cesium ion token(适用于符合条件的个人非商业用途),或添加 Google Maps key(用于直连计费路由和 Google 地点搜索)。供应商条款和配额适用。通过应用的 POWER UP 面板添加密钥;Keys & Costs 一节介绍了各项选项。

已安装? 请更新到最新版本。旧版本会查询公共 OpenStreetMap Overpass 服务器,但这些服务器现已拒绝请求,因此在更新之前,Traffic、Mapped Installations 和 ALPR 将保持空白。

路径一 — 一键安装,无需终端

  1. 安装或将 Pinokio 更新至 8.2 或更高版本。
  2. 打开 Pinokio 中的 God's Eye View。
  3. 点击 Install,然后点击 Start。

支持 Windows、macOS 和 Linux。Pinokio 维护者报告称,修复后的安装程序已通过跨平台测试。启动器会安装锁定版本的依赖项,寻找可用的本地端口,并在系统浏览器中打开应用。Server 菜单项可保持启动器控制台可用。

之前尝试过但安装失败? 请更新 Pinokio 后重试。8.2 版本修复了启动器安装问题; Pinokio 维护者的详细说明。

使用的是旧版启动器或手动打开嵌入式视图? 如果地球仪非常卡顿,在将其归因于 GPU 兼容性或最低硬件要求之前,请复制 Pinokio 显示的本地服务器 URL,并在常规硬件加速浏览器中打开同一 URL。一位 Pinokio 8.2.0 用户报告称,在 Pinokio 嵌入式视图中出现严重卡顿,但当在外部浏览器中打开同一运行中的服务器时,卡顿消失(#365)。这表明问题出在嵌入式浏览器上,而非应用服务器或你的硬件;这并不意味着存在最低 GPU 要求。

路径 2 — 终端 / 编程代理

使用 Node.js 24.x(24.14.0 或更高版本)或 26.x。setup doctor 会对 Node 25 发出警告,该版本已停止维护。

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

打开 http://localhost:4173。在首次运行面板中选择 Live Contacts、Space Missions、Environmental 或 Explore Manually。

启动性能

基于 M5/Chrome 环境的一次采样测得冷启动中位数为 1.86 秒。 此数据仅作为对比基准,不保证适用于你的机器或网络环境。 详见 docs/PERFORMANCE.md。

macOS 快捷方式: ./scripts/dev-fresh.sh 会清除 Vite 缓存,并直接从 Keychain 中读取已配置的密钥。该脚本也支持无密钥启动。

方式 3 — Docker

无需安装 Node;容器将发布相同的开发服务器。

git clone https://github.com/bilawalsidhu/gods-eye-view.git
cd gods-eye-view
docker compose up

按照上述步骤打开 http://localhost:4173。应用保存的所有数据都留存在你克隆的文件夹中,因此执行 docker compose down 不会丢失任何内容:

  • .env — 你的 API 密钥,无论是从 Provider Settings 保存的还是手动输入的
  • .gev-cache/ — 已下载的地图和卫星数据,让后续启动更快
  • .gev-logs/ — 日志

备份该文件夹就等于备份了全部内容;删除 .env 即可彻底清除你的密钥。源码编辑仍然支持热重载。端口仅发布到 127.0.0.1,因此默认行为与原生模式一致。

本地 MCP 服务器和 ChatGPT OAuth 语音在 Docker 环境下不可用;如需使用语音功能,请改用 OpenAI API 密钥。

将实例对外发布即对应 Sharing an instance 选项,它同样会分发 Provider Settings:启动器会将容器网关视同本机,而更广泛的发布则让其他人都能通过同一地址访问。如果你打算共享该实例,请改为手动将密钥写入 .env。详见 SECURITY.md。

扩大发布范围时,请同时设置 GEV_KEY_SETUP_TRUSTED_PEERS=none,使启动器不信任任何网关地址。

GEV_KEY_SETUP_TRUSTED_PEERS=none docker compose up

Compose 会从你的 shell 或项目的 .env 文件中读取并转发 GEV_KEY_SETUP_TRUSTED_PEERS 和 GEV_ALLOWED_HOSTS;已导出的 shell 变量优先级更高。你也可以在 .env 中写入 GEV_KEY_SETUP_TRUSTED_PEERS=none 作为持久化配置。未设置或为空的 trusted peers 将保留自动网关发现功能;设为 none 则明确禁用该功能。启动日志会确认没有信任额外的 peer。

在 Linux、NAS 或反向代理后运行

请以需要拥有其写入文件权限的用户身份运行。id 命令会显示对应的数字 ID;对于你自己在 Linux 上:

env UID=$(id -u) GID=$(id -g) docker compose up

在 NAS 上,将仓库克隆到您希望存放数据的共享目录中,并使用该共享目录所有者的 ID:

cd /volume1/docker
git clone https://github.com/bilawalsidhu/gods-eye-view.git
cd gods-eye-view
env UID=1026 GID=100 docker compose up -d

始终使用 env 前缀:bash 将 UID 视为只读变量,因此直接在命令前写 UID=1026 会被静默忽略。如果容器无法写入 checkout 目录,启动时会明确提示。macOS 和 Windows 上的 Docker Desktop 会自动处理权限映射。

在启用 SELinux 的主机(Fedora、RHEL)上,compose 会以 :z 标志挂载 checkout 目录,使容器能够读取;Docker 可能会为容器访问重新标记 checkout 目录的标签,在大型 checkout 上这需要几秒钟。缺少该标志时,启动会报错 Cannot find module '/app/scripts/docker-start.mjs'。

通过反向代理访问时,请将密钥写入 .env 或以环境变量形式传入——Provider Settings 有意拒绝经过代理的请求——并添加你实际使用的域名,例如 GEV_ALLOWED_HOSTS=globe.example.lan(参见 共享实例)。

纯 IPv6 网络、重建与测试套件

启动器会读取 IPv4 默认网关,因此纯 IPv6 的 Docker 网络找不到网关:日志会输出 No default gateway; Provider Settings stays loopback-only,面板也会拒绝所有保存操作。在这种情况下,请手动将密钥写入 .env,或者在阅读完 SECURITY.md 后,使用 GEV_KEY_SETUP_TRUSTED_PEERS 自行指定网关。

node_modules 有意保留在镜像内部,因此它会在匿名卷中跨重启存活:当 git pull 拉取了依赖变更时,使用 docker compose down -v && docker compose up --build 重建即可。镜像同时跳过了 Puppeteer 的 Chromium 下载,这使镜像体积更小,但 npm run test:track 需要在宿主机上运行——npm run build 和 npm test 在容器内可以正常执行。

然后启动它——在应用内操作,而非在文件中

密钥是增强项,不是前置条件。当你需要时,点击右下角的 POWER UP 标签:Provider Settings 会列出所有受支持的密钥、它能解锁的功能以及获取方式。粘贴后点击 SAVE KEYS,应用会自动重启并启用新能力。一切配置完成后,标签会显示为 POWERED UP——如果紧凑布局将其隐藏,?setup=1 可以重新打开同一面板。

  • 密钥存放位置: Pinokio → 应用被忽略的 pinokio/ENVIRONMENT 文件;终端克隆 → 仓库根目录的 .env。无论哪个文件,都会在写入密钥之前先设置为主机独占权限。这些是本地纯文本文件,已从 Git 中排除;应用使用你的密钥来连接对应的服务提供商。
  • 你已有的密钥仍归你所有: 来自 shell 或 macOS Keychain 的值会显示为 configured externally,面板对其为只读。
  • 建议首先获取的密钥: 免费的 Cesium ion token(适用于符合条件的个人非商业用途;适用当前条款和配额),用于获取照片级真实感的 3D 地球和世界地形数据;Google Maps 密钥仅用于启用计费的路线规划 + Google 地点搜索;当你想与世界对话时再获取 OpenAI 密钥。完整的密钥与费用说明见 Keys & Costs。
旧版 Pinokio 与凭据存储

不要在 Pinokio 8.0.40 的原生 Configure 面板中输入凭据:该版本无法正确保存此嵌套应用的文件,且会记录提交的值。请改用 GEV 内部的 POWER UP → Provider Settings。Pinokio 8.2 的发布公告修复了安装问题,但并未确认这个独立的 Configure 问题已解决。在 macOS 上,通过 ./scripts/dev-fresh.sh 使用 Keychain 仍然是更安全的存储方案。

服务器在两条路径上均绑定到 localhost,Provider Settings 仅响应来自本机的请求。浏览器端的密钥(Google Maps、Cesium ion)必须在各自的服务提供商处进行限制——SECURITY.md 中有具体操作说明,其中也包含了局域网共享规则,参见 Keys & Costs。


🕐 最初的五分钟

选择一个首次启动任务,或按顺序尝试以下操作。动图展示的是 Google Photorealistic 3D 底图;你的起始底图取决于你添加的密钥。

  1. 点亮天空。 启动 Live Contacts 任务(或自行开启 Flights)——数千架实时飞行器正沿真实遥测数据滑行,检测网格已在解析场景。点击其中一架:镜头锁定,尾迹随之展开,实时遥测卡片随即弹出。
  2. 接管操控。 在已跟踪的飞机上按下 COCKPIT,乘它下降,中途切换传感器:从 NVG 切入 Ironbow FLIR。

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

  1. 俯冲进一座繁忙机场。 搜索一座机场,开启 3D 飞行器后降至滑行道——地面目标、滑行尾迹、整个机坪都在实时运转。

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

  1. 透过公共摄像头观察。 在奥斯汀、伦敦、加利福尼亚、芬兰或特拉华州上方开启 Cameras(实时视频)。这些画面不是网页摄像头嵌入——它们投射进 3D 城市。将覆盖模式切换至 VIEWSHED,每路摄像头都会绘制其估算的覆盖体积——它能看多远,又在哪里失去视野。

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

  1. 跟踪一颗在轨目标。 开启 Satellites,点击国际空间站——你将伴随它保持在轨距离飞行,轨道环一并呈现。

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

  1. 切换光学模式。 按下 1–7——CRT、NVG、FLIR——整个实时地球将通过不同传感器重新渲染。

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

  1. 与它对话(需要 OpenAI 密钥):"带我去 LAX,并选择最近的空中飞行器。"
  2. 回到初始视角。 按下 Reset Globe——或者直接说_"缩放到全球视图。"_

键盘: 1–7 视觉样式 · H HUD · D 检测 · C 座舱 · ` 帧率 · Esc 退出。触控板双指捏合缩放地球。


🛩️ 座舱

每架飞机都应该让你做到这一点。

实时座舱模式,基于实时航班数据构建:相机跟随你的目标飞行器,脚下是真实地形,一路下探——传感器风格同步切换,Contacts 将 250 公里范围内的目标清单触手可及:在飞机之间自由跳转,直接坠入下一架座舱。

在实时飞行器之间跳转,直接坠入座舱视角

座舱还自带一条简报条:附近实时信号、区域头条新闻、当地真实天气——外加一个可选的 WX 模式,基于飞行器周围的真实观测数据渲染体积云。

一架实时军机目标依次切换 Normal、NVG 和 Ironbow FLIR 传感器,高密度探测

座舱模式存在的意义:你正骑乘一架真实飞行器,掠过真实地形——而你可以选择用哪种传感器来观察这个世界。


🎙️ 与它对话

独立应用提供 OpenAI 和 Gemini 两种选项,在 GEV MIC 提供商选择器中切换。OpenAI 为默认选项;你的选择会保存在当前浏览器中。要使用 Gemini,请在 Provider Settings 或本地 .env 文件中添加 GEMINI_API_KEY,然后选择 Gemini。GEMINI_LIVE_MODEL 默认为 gemini-3.8-live。永久密钥保留在本地服务器上,服务器会签发一个受限的、一次性的会话凭证。

切换提供商会结束当前对话。如果语音已开启,新提供商会以相同的免提或按键说话模式启动;按住的空间键不会延续。Gemini 使用相同的地图操作和字幕,但没有 OpenAI 的费用计量器或 MINI 层级。当 Gemini 报告会话已过期时,重新开启语音即可开始新对话。提供商选择器不会影响基于 OpenAI 的 AI HUD 摘要。

语音可使用 OpenAI API key,或同一台机器上可选的已登录 ChatGPT/Codex OAuth 会话。API-key 路径仍为默认。在 Provider Settings 中选择 ChatGPT OAuth 会复用现有的本地登录或启动 Codex 浏览器登录流程,完成后自动切换到 OAuth。OpenAI 密钥仍驱动 AI HUD 摘要:一段简洁的、五个词的情报风格播报,描述当前视野,随你移动而刷新。

OAuth 选项为实验性功能。OpenAI 已记录 ChatGPT 套餐对 Responses API 的使用;复用 Codex 令牌的支持第三方 Realtime 合约尚未得到确认。成功铸造令牌不代表建立了计费或支持条款。

GEV 读取 Codex 的文件凭证,但不会写入或刷新它们。它会检查令牌格式和过期时间,并将过期登录报告为需要重新认证。登录按钮运行 codex login,允许一次挂起的尝试,并报告退出失败或两分钟超时。CODEX_HOME 必须与 Codex 使用的目录一致。如果 CODEX_AUTH_JSON 指向其他位置,请单独登录或先修复该不一致,再使用按钮。Codex 凭证存储必须使用 auth.json;仅 Keychain 和内存存储对 GEV 不可读。在 Windows 上,登录按钮可能无法启动通过 npm 安装的 Codex;请自行运行 codex login,然后选择 OAuth。参见 Codex credential storage。

要进行一次实时语音检测,针对你的本地开发服务器运行 node scripts/qa-voice-auth.mjs http://127.0.0.1:4189 oauth microphone.wav。使用一个 WAV 文件,开头有三秒静默,随后是一句简短的语音回复请求。将 oauth 替换为 api-key 可检测 API-key 路径。该检查验证音频输入、已完成的语音回复、用量、资源清理和重连。截图和无凭证结果保存在 .gev-logs/voice-auth/ 下。

点击 GEV MIC,授权麦克风,然后直接说话。这不仅仅是一个语音遥控器:

  • 🧠 它知道自己在看什么。 智能体在回答前会拉取实时场景上下文——包括坐标、街道名称、激活的图层和视图比例尺。飞行途中问一句 "这是什么城市?",它知道。
  • 🎯 实体问答。 点击任何飞机、舰船或数据中心,问 "这是什么?" 它使用对象的实时遥测数据来回答。
  • 👁️ 视觉锚定。 在街道层面,它会读取视口截图来识别可读的标牌和建筑名称,并被指示绝不捏造标签。
  • 🎬 电影级取景。 "给我看看头顶的飞机" 会把相机拉远、调整角度,像导演一样框定实时空中交通。
  • 🔒 诚实且安全。 智能体只确认已成功执行的操作。你的 OPENAI_API_KEY 永远不会触及浏览器;客户端只获得一个短生命周期的会话令牌。如果你在 Provider Settings 中选择 USE CHATGPT OAUTH,本地服务器仅使用该登录来铸造同类型的短生命周期 Realtime 凭证,并拒绝非回环客户端的 OAuth 路径。

三十个工具,四项职责——以下命令直接来自产品的语音测试套件和工具手册:

🎥 指挥它 — 无人机操作员相机动词:

"Rotate the globe" 持续向右旋转地球;要求向左、指定速度或停止均可。如果它拒绝,请遵循其重置再旋转或进一步缩放的指引;相机输入会停止旋转。

🗣️ "带我去东京。" · "围绕这个区域缓慢旋转。" · "画出从国会大厦到 Zilker Park 的步行路线。" → "沿着我们刚画的路飞。" · "缩放到地球视图。"

🖊️ 标注它 — 现实世界上的白板:

🗣️ "描出得克萨斯州的轮廓。" · "标注得克萨斯州议会大厦及其周边" — 它画的是实际 enclosing 边界,而不是一个圆。 · "埃菲尔铁塔到卢浮宫有多远?" — 一条连接箭头出现,它读出距离。所有内容持久保留,直到你说 "清除地图。"

✍️ 或者自己画 — DISPLAY ▸ Draw:选择 Area、Line 或 Pin,在真实世界上点击顶点,双击完成,添加标签。同样的白板,同样的持久性,不需要麦克风。

Zilker Park 和 Lady Bird Lake 作为持久矢量标注绘制到 3D 城市上,由语音驱动

一段口述距离测量跨越一座机场,从轨道高度俯瞰

🔎 审问它 — 针对实时图层的分析师查询:

🗣️ "现在得克萨斯州上空有多少架航班?" · "哪些船正驶向奥克兰?" · "洛杉矶附近最大的火情是什么?" · "有没有什么飞在四万英尺以上?" · "ISS 下一次经过是什么时候?" · "视野内有多少个数据中心?"

🎛️ 操控它 — 整个控制台,无需双手:

🗣️ "切换到夜视模式并打开航班图层。" · "打开相机可视域。" · "播放奥斯汀附近的一个新闻电台。" · "跟踪那架飞机。" → "进入座舱。"

还有速射层级 — 每句一句话:

🗣️ "给我看看全球基础设施。"(编排图层并拉远到地球视图) · "播放 Orbital Watch。"(一段完整的电影级场景) · "将探测密度设为百分之五十。" · "下一个目标——只要直升机。"(座舱中) · "给我看看太空任务。" · "切换到 OSM。" · "把图像锐化一点。" · "切换到战术布局。" · "现在开了什么?"

地球逐渐布满全球电台,作为另一个实时图层

要求播放任何地方的电台,地球就开始广播——每个电台都是一个你可以飞去的真实地点。


💬 或者从 Claude 和 Codex 发起询问。 God's Eye View 同时也是一个 MCP 服务器:让 Claude Desktop、Codex 或 ChatGPT 桌面端显示某个地点,实时地球会直接在对话中打开。设置只需一分钟——参见 docs/MCP_SETUP.md。

🛰️ 球体上的图层

二十个图层与地图数据源。十八个支持免密钥接入。 部分图层在提供服务商密钥后可解锁更多能力。(🟢 无需密钥 · 🟡 免费密钥 · 🔴 按量计费。)

图层 内容 数据源 鉴权
🗺️ 底图 Esri 卫星影像、Google 真实感 3D、OSM,以及额外的 Ion 托管底图 Esri / Google / Ion / OSM 🟢 Esri 卫星 + OSM · 🟡 Ion 托管 Google 3D + 全球地形 · 🔴 直连 Google + 地点搜索
✈️ 实时航班 11,000+ 架实时飞机 + 航线历史 OpenSky + adsb.lol 🟢(🟡 可选,获取更多轮询额度)
🎖️ 军用航班 ADS-B 军用航空交通以琥珀色显示,紧急广播以红色显示 adsb.lol 🟢
📡 GNSS 完整性 区域导航精度评分;异常不等于干扰确认 adsb.lol, GPSJAM 聚合数据 🟢
🔥 火场边界 事件边界与已报告的控制进度 WFIGS / NIFC 🟢
🚢 实时船舶 全球数千艘船舶 AISStream 🟡
🛰️ 卫星 838 个目标编目,按类别着色并附带实时图例 —— 点击 DENSE 芯片即可加载整个 Starlink 壳层 CelesTrak 🟢
🌍 地震 全球地震活动,近 24 小时 USGS 🟢
◍ 空气质量 实时 AQHI,采用已发布的 1–10+ 健康风险等级,天气面板中显示色带图例及当前视图中最高读数。仅限加拿大 — ECCC 为首个注册数据源 ECCC MSC GeoMet 🟢
🚗 交通 OSM 道路上的模拟车辆。接入 TomTom 后,实时流速驱动模拟,约 8 km 以下显示拥堵色;单个车辆位置并非实时观测数据 TomTom + OSM 🟢 模拟 · 🟡 实时流速
📹 CCTV 网格 约 4,000 个公共摄像头(共享上限)投影 至 3D 空间 — Austin · Texas (TxDOT) · California (Caltrans) · London (TfL) · Ontario (511, 免费开发者密钥) · Finland (Fintraffic) · British Columbia (DriveBC) · Estonia (Tallinn, Tarktee) · Delaware (DelDOT 实时视频) · New South Wales (Live Traffic NSW) · Calgary · Norway (Statens vegvesen) · Toronto · King County (WA) · Washington (WSDOT) · Catalonia (Servei Català de Trànsit) · Hong Kong (Transport Department) · Taiwan (Freeway Bureau, MOTC),另可选 New York City (NYC DOT TMC, 需自行签订 NYC DOT 协议)、Lithuania (Via Lietuva / Eismoinfo, 照片授权未确认) 和 Florida (FL511, 仅限个人使用;其他用途需 FDOT 书面同意)。位置为公开数据;姿态为估计先验值,通过拖动摄像头上的 gizmo 自行校准 City APIs 🟢
📷 已标注 ALPR 摄像头 由 OpenStreetMap 贡献者标注的 license-plate-reader 摄像头位置,每次加载一个城市级视口范围,支持 SHOW NEAREST。仅含位置与标签:无车牌数据,无视频 OpenStreetMap(含 DeFlock 标注) 🟢
📷 街景 街景照片统一在一个面板中,每个数据源对应一个芯片:街道覆盖范围、影像锥体、内嵌查看器支持全屏 EXPAND。Mapillary、Google Street View、KartaView 和 Panoramax Mapillary · Google · KartaView · Panoramax 🟢 KartaView, Panoramax · 🟡 Mapillary token · 🔴 Google Maps key
📻 广播 全球地理定位广播,配备模拟调谐器 — 拖动指针穿越最多 750 个电台,球体将飞至每个广播站 Radio Browser / 广播机构 🟢
🚌 公共交通 实时公交、有轨电车、地铁、火车和渡轮,报告间隔内支持延迟回放、选中车辆轨迹、按交通方式着色的 DETECT 标签 — Boston、Austin、Minneapolis、Helsinki、荷兰、挪威、南昆士兰,以及安大略省九个城市:Toronto(地面车辆;地铁不发布位置)、Mississauga、Hamilton、Durham Region、York Region、Guelph、Burlington、Barrie 和 Kingston 运营商 GTFS-Realtime 数据源 🟢
🚲 共享单车 实时站点可用性 GBFS 🟢
🧭 导航 在球体上点击 A 和 B,即可生成沿街道的驾车、步行或骑行路线,贴合地形并附带逐步指引 — 然后 FLY 镜头沿路线飞行。无需密钥、无需地理编码器、无需麦克风 OSRM on FOSSGIS servers (OpenStreetMap) 🟢
🔥 活跃火点 NASA FIRMS 实时探测数据,追溯 24 小时 NASA FIRMS 🟡
🚀 太空任务 滚动 30 天发射记录,含有效载荷、级段及回收详情 Launch Library 2 🟢(🔴 可选付费 token 可提高额度)
🎖️ 已标注军事设施 视口范围内的军事设施上下文信息,来自社区标注 — 本质上不完整,并已如实标注 OpenStreetMap 🟢
🌬️ 风场 10 m 预报风场动画,可选速度、温度或气压色标,并在地图中心显示读数 NOAA GFS / ECMWF IFS 🟢
🌦️ 观测天气 雨雷达(美国本土)、卫星云图(GOES 区域或全球红外,仅云图或完整影像)以及雷暴密度(美洲和太平洋),统一在一条历史时间轴上 NOAA nowCOAST 🟢
🌀 气旋 大西洋和东/中北太平洋的顾问位置、预报路径及不确定度锥 NOAA NHC / CPHC 🟢

天气,免密钥。 风场基于 NOAA GFS 或 ECMWF IFS 渲染 10 m 预报流向动画,支持可选色标和地图中心读数。雨雷达、卫星云图和雷暴密度为观测数据,统一展示在 WEATHER 面板的历史时间轴上(可回溯、Play、Latest);气旋顾问绘制 NHC 和 CPHC 的位置、预报路径及不确定度锥。在 Google 3D Tiles 上,观测图层以半透明壳层悬浮于城市上方,并围绕当前视口锐化。

在应用中,Data Layers 将它们分为:Movement、Cameras、Infrastructure、Events、Weather 和 Utilities。

底图阶梯 — 各档位各能获得什么:

你拥有 你获得的球体
🟢 无 Esri World Imagery 卫星底图 + 免密钥地形,2D 模式。Esri 不可达时 OSM 自动接管;地形不可用时球体照常运行(无地形)
🟡 免费 Cesium ion token Google 真实感 3D 城市和全球地形 — 适用于个人、非商业用途;适用当前 ion 条款和配额
🔴 Google Maps key 同样来自 Google 的 3D 直连,外加 Google 地点搜索 — 已启用计费的按量路线

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

Space Missions 图层回放一次 Falcon 9 发射 — 标注 RECONSTRUCTED ESTIMATE,支持 0.25×–4× 拖拽调速。

球体上还有: 街区叠加层 · 可选的座舱 WX 云层特效。内置静态基础设施: Datacenters(4,351)、Dams(704)和 Submarine Cables(712)。

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

缺少你想要的图层? 提一个 issue — 或者自己加上然后发 PR。


📷 Street Level

在一个面板中查看任意提供商的街景照片。本版本内置了 Mapillary(附带免费 client token)、Google Street View(需自备 Google Maps key)、KartaView 和 Panoramax(无需 key)。

配置。 前往 mapillary.com/dashboard/developers,注册一个具有 Read 权限的应用,并复制其 Client Token(MLY|…)。将其粘贴到 POWER UP → Mapillary 中,或在 .env 中设置 MAPILLARY_CLIENT_TOKEN 后重启。若未配置,面板将显示 KEY REQUIRED。Google Street View 使用 GOOGLE_MAPS_API_KEY,需确保该 key 已在 Google Cloud 中启用 Maps JavaScript API;其指示器默认处于关闭状态,因为每次查看全景图都会产生计费。KartaView 和 Panoramax 无需任何配置:它们的公共 API 无需 key 即可访问。

使用。 在 DATA LAYERS → Cameras 下开启 Street Level,或通过 STREET LEVEL 面板标题栏中的切换按钮开启。每个提供商都有独立颜色的指示器(Mapillary 为绿色),同一时间只有一个处于激活状态:激活一个会关闭其余的。Mapillary 作为免费选项,默认处于激活状态。缩放到街景级别(60 km 以下)即可看到覆盖线;从轨道高度查看时,面板会提示用户向下缩放。IMAGERY(ALL / 360° / FLAT)和 SINCE 过滤器适用于 Mapillary、KartaView 和 Panoramax;Street View 的全景图均为 360°,因此在 Street View 激活时这些过滤器会被隐藏。点击一条覆盖线可查看其影像锥,点击影像锥可打开照片。激活 KARTAVIEW(紫色)并缩放到约 6 km 以下:其覆盖线代表 KartaView 有照片的街道,点击任意一条可打开距点击位置最近的照片,支持平面或 360° 模式(拖拽环视),沿线分布着拍摄方向锥;‹ › 或 ← → 可沿路线逐步浏览(Shift+← →、↑ ↓ 和 + − 可在 360° 照片中环视;手机上双指捏合缩放)。KartaView 已归档的照片会被跳过,若某区域全部已归档,面板会给出提示。对于 KartaView,SINCE 按上传日期过滤(KartaView 自身的地图也是如此,它仅支持按日期过滤),面板会在 SINCE 值旁标注说明(ANY DATE (by upload date));KartaView 在其服务器上过滤覆盖线,对于此前未渲染过的区域,加载可能需要数秒。激活 PANORAMAX(橙色)可查看开放、联邦化的公共数据(在法国和比利时最为丰富):缩放到约 60 km 以下时,其覆盖线为拍摄序列。点击覆盖线可在不移动相机的情况下打开该序列中距点击位置最近的图片,支持平面或 360° 模式,序列沿线分布着影像锥;‹ › 或 ← → 可沿序列逐步浏览,两个过滤器均可使用。图片说明中会标注作者(或托管实例)和许可协议(多数为 CC BY-SA 4.0;IGN 实例上的图片为 Licence Ouverte 2.0)。在 Google 3D 地图上(Google 的条款限制 Street View 不得出现在其他底图上),激活 GOOGLE STREET VIEW 后,从 3 km 以下点击街道,或按 OPEN STREET VIEW 查看视口中心的全景图;沿箭头逐步浏览。照片上方有:EXPAND(全屏;按 Esc 退出)和 FIT / FILL(适用于 Mapillary,以及平面模式的 KartaView 和 Panoramax 照片)。说明中的链接指向提供商网站上的原始图片,地球仪会标注每个已启用的提供商("© Mapillary contributors, CC BY-SA 4.0"、"Street View imagery © Google"、"© KartaView contributors, CC BY-SA 4.0"、"© Panoramax contributors, licence per picture")。KartaView 自身的照片页面在未登录状态下会失效,因此其链接直接打开原尺寸照片。

分享链接会携带提供商开关和过滤器参数(0.m.0 Mapillary 关闭,0.m.0_0.r.google-1 Street View 开启,0.m.0_0.r.google-0*kartaview-1*panoramax-0 KartaView 开启,0.m.0_0.r.google-0*kartaview-0*panoramax-1 Panoramax 开启,格式与应用内部写入的一致(0.m.0_0.r.kartaview-1 和 0.m.0_0.r.panoramax-1 同样有效;若链接中省略 m 参数,则默认保持 Mapillary 开启),0.p.p 仅显示全景图,0.s.365 仅显示最近一年)。如需添加新提供商,请在 src/layers/streetLevel/registry.js 中实现接口契约,并在 src/app/layers/streetLevel.js 中注册。

🎖️ 实战任务

基本操作上手之后,试试这些:

任务 操作
🚁 询问星球 "为什么这些军用直升机都在转圈?" 选中一条军用航迹——它会静默回溯约 24 小时的真实轨迹历史——看它到底在干什么,以叠加的 3D 环状呈现。
✈️ 最后进近 点选追踪一架正在对准跑道的大客机,跳进座舱,随它一路降下来。
🌃 夜间值守 飞到你所在的城市,切换到 NVG,让探测网格和 HUD 为你解读眼前的场景。
🚢 港口调用 长滩港上空的舰船。点击一艘油轮查看其战术卡片和航迹尾流——然后在 CCTV 面板中点击 NEAREST,透过公共摄像头看同一片水域。
📻 东京 FM 开启 Radio 图层绕涩谷飞行——然后拖动模拟调谐器指针:每个位置都会吸附到真实电台,地球随即飞向正在广播的那个。
🔥 火线 加州上空的 FIRMS。点击一个火点——镜头俯冲过去——读取强度,然后在 CCTV 面板中点击 NEAREST 获取地面视角。
🚶 请求步行路线 🎙️ 告诉世界你要去哪儿,看一条真实的沿街路线在 3D 城市中自行描绘出来——然后 "飞过去":倾斜转弯、柔和收尾,镜头像无人机航拍一样引领路径。
📏 测量 LAX 到 DFW 🎙️ "LAX 到 DFW 有多远?"——一支箭横跨全国,距离落在标注里,端点在你环绕时始终锚定在真实世界。
🚀 发射回放 打开 Space Missions,从过去 30 天中选一次发射,跟随 T-minus 倒计时从升空到入轨——以 0.25×–4× 拖拽回放。标注为 RECONSTRUCTED ESTIMATE,因为它确实如此。
🪦 漫步机冢 从区域视角一路飞入密集且完全解析的退役飞机行列。
🏗️ 环绕三峡 一眼扫过大坝及其周边地形——然后打开 Dams 图层,再找到 703 座。

🎙️ = 语音任务——需要一个 OpenAI 密钥。

将选定飞机近期飞行轨迹解析为地形上方的叠加 3D 环

询问星球:一个军用目标过去约 24 小时的真实轨迹历史,以叠加 3D 环呈现。

请求步行路线并沿生成路径飞越 3D 城市

"画出步行路线……现在飞过去"——倾斜转弯、柔和收尾,镜头像无人机航拍一样引领路径。

从区域视角飞入机冢中密集排列的退役飞机

漫步机冢:退役机体排列成行,在 3D 中完全解析。


🔧 底层原理

地球如何驱动实时数据:

  • 图标姿态与真实世界对齐。 飞机和船只的朝向始终沿其真实航向,无论相机从哪个角度观察——是否被跟踪、垂直俯视还是平视地平线——均通过逐帧屏幕空间航向投影实现。不会旋转,也不会被视口锁定。
  • 用断续数据实现平滑运动。 实时数据每 15–30 秒到达一次;地球渲染比实时延迟一个间隔,并在已知定位点之间进行插值,航位推算负责填补空白。
  • 卫星位置精准可信。 采用 SGP4 轨道传播,轨道环通过 GMST 重对齐始终与卫星保持锁定——无漂移,无逐秒闪烁。
  • 落在真实地面上。 实体高度与 Google 3D Tiles 对齐,飞机停在机坪上,摄像头立在街角,而非悬浮在空中。
  • 缓存与请求配额。 OpenSky 信用额度控制器、TomTom 每日瓦片配额以及磁盘缓存的 TLE 数据,共同减少重复请求。这些控制措施不能替代供应商的配额或计费限制。
  • 服务端凭据管理。 所有涉及私钥的 API(OpenAI、AISStream、OpenSky OAuth、摄像头帧)均通过加固的服务端代理中转,具备 SSRF 防护、响应大小限制和错误信息脱敏。浏览器能接触到的仅有 Google Maps 和 Cesium ion 的密钥(两者均需在供应商侧进行权限限制)。
  • 无框架依赖。 原生 JavaScript、CesiumJS 和 Vite——搭配 Google Photorealistic 3D Tiles 构建地球,OpenAI Realtime API 提供语音能力。代码易读,易于二次开发。
src/
├── main.js                 # Bootstrap: Google 3D tiles, layer registration
├── ui/                     # Runtime UI — panels, HUD, styles, controls
├── 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 + 30 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

参阅 docs/CURRENT-STATE.md 获取权威的运行时参考。


🔑 API 密钥

🟢 无需密钥 · 🟡 免费密钥 · 🔴 按量计费

通过 POWER UP → Provider Settings 添加密钥。下表说明了各服务商的功能范围;全部选填,不添加也可启动。密钥的存储与配置详情请参阅设置指南。

以下功能无需密钥即可使用:Wind、Rain 雷达、Satellite 云层、Lightning 密度、Cyclone 预警、Mapped ALPR 摄像头、Transit、Directions、Delaware 实时视频,以及坐标或捆绑地点搜索。某图层若等待密钥,会在该行标注所需密钥名称。

选择你需要的能力

共七把密钥。其中五把有免费额度,两把 🔴 的按量计费:

密钥 用途 获取方式
🟡 Cesium ion 🗺️ Google Photorealistic 3D、全球地形及额外的 ion 托管影像图层。免费 Community 套餐面向符合条件的个人/非商业用途,有配额限制 cesium.com/ion — 使用公开的 assets:read token,并查看当前定价与资格
🔴 Google Maps 直连 Google Photorealistic 3D、Google 地点搜索与 Street View(Map Tiles API;Street View 还需 Maps JavaScript API) Google Cloud Console — 建议设置 URL 访问限制
🔴 OpenAI 🎙️ 通过 API 密钥实现语音交互与 AI HUD 摘要。Provider Settings 还提供 USE CHATGPT OAUTH,可在不移除 API 密钥选项的情况下使用云端语音 platform.openai.com — API 密钥按量计费,费用见下方
🟡 AISStream 🚢 全球船舶实时动态 aisstream.io — 免费注册
🟡 NASA FIRMS 🔥 实时活跃火点 firms.modaps.eosdis.nasa.gov — 免费
🟡 TomTom 🚦 模拟交通图层中的实时流速与拥堵色阶 my.tomtom.com — 提供免费层级
🟡 Mapillary 📷 Street Level 覆盖范围与照片。公开 client token 为设计惯例(详见 SECURITY.md) mapillary.com/dashboard/developers — 注册应用,复制其 Client Token

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

TomTom 密钥带来的体验:高峰时段的拥堵密度铺满城市——然后从堵点直接俯冲进正在俯瞰它的摄像头。

锦上添花

密钥 用途 获取方式
🟡 OpenSky ✈️ 更多航班轮询额度(🟢 匿名模式无需配置) opensky-network.org
🔴 Launch Library 2 🚀 可选的付费令牌,用于提升请求上限(🟢 公开访问无需密钥) thespacedevs.com/supportus

如需更高的轮询额度,请配置以下密钥。 标准公开访问请将 LL2_API_TOKEN 留空。LL2 令牌是可选的付费 Patreon 升级,用于提升请求上限,没有免费的 API 密钥注册。

npm run doctor 会报告 Node/npm 的就绪状态、主要数据源的配置路由,以及各已配置数据源的查找位置,且不会输出凭据值。 在 macOS 上,其支持钥匙串的结果会预览 ./scripts/dev-fresh.sh;普通的 npm run dev 仅读取显式环境变量和 Vite dotenv 值。OpenSky 摘要会报告显式 anon 或缺少客户端凭据对的 OAuth 模式下的无密钥匿名访问,对完整的 OAuth 凭据对仅保留"已配置"的提示,并标识所选的 Basic 或 auto 模式,而不会猜测运行时将接受哪些 凭据。Basic 和凭据文件模式仍属于 dev-fresh.sh 的高级配置。

高级配置:环境变量与 macOS 钥匙串

适用于无头机器、编码代理或脚本化配置的场景:

# 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 支持完全匿名模式运行(OPENSKY_AUTH_MODE=anon),也可以通过 ./scripts/opensky-import-client.sh /path/to/credentials.json 导入 OAuth 凭证。

实时视频监控(HLS)

配置了 "feedType": "hls" 且注册了 HTTP(S) .m3u8 URL 的 CCTV 数据源,通过一个按需加载、由监控平面和面板共享的 hls.js 解码器进行播放。DelDOT 使用其官方 HTTPS HLS 目录链接。可通过 CCTV_DELDOT_ENABLED=0 禁用该数据源包。

服务器允许两个并发会话。每个会话最多保留 12 个分片,内存占用不超过 24 MiB;单次下载上限为 4 MiB,超时时间为十秒。不涉及分片文件或 ffmpeg 进程。重定向、跨源引用、加密播放列表以及非 MPEG-TS 分片均会被拒绝。每个解码器拥有独立的客户端租约(每个会话最多八个),原生 HLS 也包含在内。关闭某个解码器仅释放其对应的租约;被放弃的租约在 15 秒无访问后自动过期。最后一个租约释放时,上游任务随即停止。实时视频加载失败时,会回退到已有的静态图片/街景/合成方案——这些并非实时视频。仅支持 RTMP 的数据源不被此集成所支持。

💸 实际花费

以下是大致的真实费用,截至 2026 年中——请务必查看各服务商的最新定价页面:

费用说明
🟢 大多数数据层 $0,无需注册。 OpenSky 匿名模式、USGS、CelesTrak、adsb.lol、城市 CCTV、Radio Browser、GBFS、Launch Library 2、公交数据、OSRM 路径规划、NOAA 和 ECMWF 气象数据、OpenStreetMap ALPR 映射、内置数据集。
🟡 免费密钥层 $0,但需注册。 AISStream、FIRMS、TomTom、OpenSky,以及符合条件的个人/非商业用途可用的 Cesium ion。服务商配额和资格限制仍然适用。
🗺️ Google 3D 瓦片 通过符合条件的 Cesium ion Community 账户在配额内免费;通过 Google 直连密钥则按量计费。 如需使用 Google 地点搜索或进行商业部署,请使用直连方式,确认服务商当前条款,并在启用计费时设置预算提醒。
🔴 OpenAI 语音 API 密钥会话保留实时支出显示、STD/MINI 模型切换、$2 提醒和 $5 硬性上限。ChatGPT OAuth 是 Provider Settings 中的显式选项,其用量会被追踪,但不提供 API 美元估算或支出上限。语音上下文窗口刻意保持较短。

Google 的直连 3D 通道出乎意料地慷慨:每月前 1,000 次 Photorealistic 3D Tiles 会话目前免费,一次根请求大约能支撑三个小时的渲染。一位探索频率不高的个人用户,完全有可能留在免费额度之内。但仍需启用计费,因此请限制密钥权限并设置配额或预算提醒。在依赖这些数字之前,请先查看 Google 的当前定价。

🧗 低门槛是刻意为之

上面所有内容都是刻意保持的低成本基线——足以让你真切体验到地理空间情报、GEOINT 和 OSINT 的魅力,而无需与任何销售团队打交道。你也会注意到天花板所在:地面 AIS 在远洋区域信号中断,卫星 AIS 则需要真金白银;高分辨率影像、SAR 和更深层的商业数据源则藏在企业级合同背后。这不是架构的局限——这里的每一层都是可以直接指向你自己数据源的模板。这个仓库交给你的是地基;往里融合什么,由你决定。

🔒 共享实例

默认情况下,其他人无法访问你的服务器——它绑定在 localhost。若要在局域网中共享,需显式开启(npm run dev -- --host 0.0.0.0 --port 4173,或 macOS/Linux 下执行 HOST=0.0.0.0 ./scripts/dev-fresh.sh)。IP 地址直接可用;如果你使用局域网主机名,需通过 GEV_ALLOWED_HOSTS=globe.lan 将其添加,因为绑定到 0.0.0.0 并不意味着信任任意的 Host 头。但请注意 ⚠️ 局域网内可见的服务器会将你配置的 API 密钥代理给任何能访问它的人。 对产生费用的端点,默认启用了基于 IP 的限流(GEV_RATELIMIT_OPENAI_PER_MIN、GEV_RATELIMIT_GOOGLE_PER_MIN——参见 .env.example 进行调整),但在其他一切之前,请先配置服务商配额、用量限制和账单告警:应用层限流不等于账单上限,单靠预算告警无法阻止消费。完整威胁模型见 SECURITY.md。

服务器共享时,Provider Settings 面板会被禁用,远程用户无法访问密钥输入界面。

此启动器中 Pinokio 局域网共享和 Cloudflare 共享仍处于禁用状态。 如需远程访问,请单独部署经过审查的认证代理。 SECURITY.md 说明了相关限制和威胁模型。


📋 负责任且开放

God's Eye View 基于公开数据、来源透明和本地优先执行。没有机密,没有私有数据集,没有来路不明的抓取——任何涉及私钥的操作都在服务端代理完成。它具有机密作战室的视觉语法,却完全由开放信号和可审查的代码构建。

底线。 本项目建模的对象是事件、资产、基础设施和系统——飞行器、船舶、卫星、火灾、摄像头、城市。它不构建针对具名人员搜索、人脸识别或追踪个人的功能,跨越这条线的 PR 不会被合并。人不是这里的查询类型。

来一起构建。 这是由掀起近期空间智能工具浪潮的那个项目衍生的官方实时 3D 客户端——它也是一块画布:这里的图层是一个人能够发现并融合的信号。添加一个城市包、一个数据源、一种风格、一个语音工具。它是你观察世界的窗口;把这座窗递给别人。

状态: 一个持续演进的开源客户端,用于探索和学习——一个快速、可魔改的地基,而非加固后的生产服务。基于 MIT License 发布。内置及在线数据集各有其自身条款——参见 DATA_SOURCES.md。安全模型: SECURITY.md。想参与贡献? CONTRIBUTING.md。

维护者: Bilawal Sidhu 和 Sameh Khamis,来自 Halfpixel。

媒体说明:本页面中的录制 GIF 展示了 Google Photorealistic 3D Tiles 和实时数据图层,用于推广目的且帧内已标注来源;它们未获得独立再使用的授权。详见 媒体来源与授权说明;完整数据源条款见 DATA_SOURCES.md。

Important

God's Eye View 是对公开数据和第三方数据的探索性可视化。 数据可能存在延迟、不完整、经建模、经推断或错误的情况。请勿将其用于 飞行或海上导航、应急响应、医疗或健康 决策、投资决定,或其他安全关键或运营 用途。重要信息请向权威来源核实。


🧭 接下来

首先——感谢每一位。感谢每一位观看了 God's Eye View 演示后转身去构建自己版本的人,也感谢每一位不断追问代码在哪里的人:我铭记于心。当我投票问大家是否应该开源时,你们的意图再明显不过了:

Community survey on open-sourcing God's Eye View

所以,它来了。钻进这部间谍惊悚片般的驾驶舱——只不过数据是真实的——让我们一起把它变成理解这个世界的共享沙盒,并且乐在其中。这个仓库是基础版本,它将保持开放,核心就是让你们去打破它,加装我们尚未想到的模块。

一个来自内部的提醒:在这个领域构建一周后你就会发现,当下是便宜的部分。一旦你试图回溯时间——瓦片化、服务化,以及在任意真实分辨率下回溯_发生了什么_和_什么在变化_——数据成本就会飙升,计算就会变得极其苛刻。这才是长期挑战。

更新——托管版本即将上线。 我们最初计划将这个仓库作为开源客户端,再单独构建一个专业产品。然后发布发生了,最强烈的呼声不是某个新功能,而是_"直接给我一个链接就行。"_ 所以我们正在 Halfpixel 上构建官方的 God's Eye View 托管版本:无需安装,直接在浏览器中打开即可。托管版本是进入这个开源项目最便捷的入口。更多细节即将公布。


▶️ 观看 God's Eye View 系列 · 📬 Map the World — 项目背后的通讯

🌐 God's Eye View. 无远弗届。

项目介绍

在你的浏览器中运行的间谍卫星模拟器,只不过数据是真实的。实时开源空间智能,呈现于照片级逼真的3D地球之上。【此简介由AI生成】

定制我的领域
1.12 K61.8 K12.06 K访问 GitHub