vignesh2027/-FLY-VIEW

GitHub: vignesh2027/-FLY-VIEW

FLY-VIEW 是一个基于CesiumJS的3D智慧地球应用,将实时航班、网络威胁和新闻数据融合到一个电影式界面,解决多源情报的直观可视化问题。

Stars: 1 | Forks: 0

``` ███████╗██╗ ██╗ ██╗ ██╗ ██╗██╗███████╗██╗ ██╗ ██╔════╝██║ ╚██╗ ██╔╝ ██║ ██║██║██╔════╝██║ ██║ █████╗ ██║ ╚████╔╝ █████╗██║ ██║██║█████╗ ██║ █╗ ██║ ██╔══╝ ██║ ╚██╔╝ ╚════╝╚██╗ ██╔╝██║██╔══╝ ██║███╗██║ ██║ ███████╗██║ ╚████╔╝ ██║███████╗╚███╔███╔╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚═╝╚══════╝ ╚══╝╚══╝ ```
# ✈ ORION 智慧地球 **世界即数据,唯需洞察。** [![在线演示](https://img.shields.io/badge/LIVE-DEMO-FF6600?style=for-the-badge&logo=globe&logoColor=black)](https://vignesh2027.github.io/-FLY-VIEW) [![GitHub 星标](https://img.shields.io/github/stars/vignesh2027/-FLY-VIEW?style=for-the-badge&color=FFD700&logo=github&logoColor=black)](https://github.com/vignesh2027/-FLY-VIEW) [![开源许可](https://img.shields.io/badge/LICENSE-MIT-white?style=for-the-badge)](LICENSE) [![构建于](https://img.shields.io/badge/BUILT_WITH-CesiumJS-FF6600?style=for-the-badge)](https://cesium.com) [![原生 JS](https://img.shields.io/badge/VANILLA-JS-FFD700?style=for-the-badge&logo=javascript&logoColor=black)](https://developer.mozilla.org/en-US/docs/Web/JavaScript) ``` █▀▀ ▄▀█ █▀▀ █░█ █ █▀█ █▄░█ █▀█ █▀▀ █▀▀ █▀█ █▄░█ █▄░█ ▄▀█ █ █▀ █▀ ▄▀█ █▄░█ █▀▀ █▀▀ █▀░ █▀█ ▄▄█ █▀█ █ █▄█ █░▀█ █▀▄ ██▄ █▄▄ █▄█ █░▀█ █░▀█ █▀█ █ ▄█ ▄█ █▀█ █░▀█ █▄▄ ██▄ ``` *航线、网络威胁、突发情报。汇聚于一个跃动的地球之上。*
## ◉ 这是什么 **FLY-VIEW** 是一个独立的、基于客户端的 3D 智慧地球,构建于 **CesiumJS** 之上——它是一个逼真、旋转的地球,并叠加了三个实时数据层,融合成一个电影般的界面。没有仪表盘,没有杂乱的面板。只有地球,和那些充满意义的数据一起跃动。 打开它,你会看到你所在的区域——地球会以电影般的平滑镜头锁定你的地理位置,就像一颗卫星刚刚找到你。然后,数据开始活跃: 这不是一个航班追踪器。这不是一个威胁仪表盘。当你同时看到所有信号时,这才是世界的真实模样。 ![正在上传 image.png…]() ## ⚡ 核心功能 ### 🌍 3D 智慧地球 - **CesiumJS 逼真地球**,带有地形、大气和卫星光照效果 - 首次加载时平滑**电影式地理位置飞入**——地球锁定你所在的城市 - **三种视觉模式**——每种模式都重新加权数据层的显示重点 ### ✈ 实时航班动态 | 数据来源 | 方法 | 更新频率 | |---|---|---| | [adsb.lol](https://adsb.lol) | REST API | 实时 | | [adsb.fi](https://opendata.adsb.fi) | REST API | 实时 | | [airplanes.live](https://airplanes.live) | REST API | 实时 | | [OpenSky Network](https://opensky-network.org) | REST API | 备用 | - 最多同时显示 **800 架飞机**,以动态黄色点表示 - **10 条全球主要航路**以发光弧线呈现(如 BOM-DXB、JFK-LHR、DEL-SIN 等) - 航路亮度反映交通密度——自然展现全球航空流量模式 - **智能 API 故障转移**——如果一个数据源失效,下一个会立即接管 ### ⚠ 网络威胁情报 - 从 **AlienVault OTX** 公开威胁源获取数据 - **20 个国家**映射了活跃的威胁档案——带有严重度分级的指标 - 真实的威胁类型:APT、勒索软件、网络钓鱼、DDoS、BEC、加密劫持、网络战 - 包含指标计数、严重度(1-10)和描述性摘要 ### 📰 情报新闻源 - 通过 RSS 聚合来自 **TechCrunch、Wired、Ars Technica** 的内容 - **区域感知过滤**——点击印度,只看印度的头条新闻 - 如果信息源不可用,则回退到精选的人工智能/网络安全头条 ### ✋ 手势控制 (MediaPipe) 两种有特定意图的手势——不是派对把戏: | 手势 | 手势形状 | 动作 | |---|---|---| | ✈ **飞机手势** | 食指和中指张开(V 字形) | 切换到 **TRANSIT(交通)模式** + 突出显示主要航路 | | 🛡 **盾牌手势** | 手掌平展,手指并拢,向前推 | 切换到 **STORM(威胁)模式** —— 威胁层主导显示 | ### ⌨ 视觉模式 ``` ┌─────────────────────────────────────────────────────────┐ │ MODE │ FLIGHTS │ THREATS │ VIBE │ ├─────────────────────────────────────────────────────────┤ │ ATLAS │ Full density │ Active markers │ Intel │ │ STORM │ Dim gray arcs │ Dominant, pulse │ War │ │ TRANSIT │ Every dot live │ Hidden │ Flow │ └─────────────────────────────────────────────────────────┘ ``` ### 🔍 航班搜索 - 输入任何航班号(如 AA101、EK201、UA287...) - 地球会**移动相机**聚焦到该飞机 - 弹出针对出发/抵达区域的情报面板 ## 🎨 设计语言 颜色系统严格且有目的性。每个像素都承载意义。 ``` ████ #000000 BLACK — Background. Always. Non-negotiable. ████ #FFD700 YELLOW — Flights. Motion. Commerce. Connection. ████ #FF6600 ORANGE — Threats. Danger. Friction. Heat. ████ #FFFFFF WHITE — UI text. Labels. Clarity. ████ #FF2200 RED — Critical. Severity 8+. Immediate. ``` **应用程序中不会出现任何其他颜色。** 字体分为: - **Orbitron** —— 用于标题、Logo、模式徽章(具有未来感和权威感) - **Space Mono** —— 用于所有数据、标签、统计信息(具有终端的精确感) 视觉效果:扫描线叠加、径向晕影、Logo 上的 CSS 故障效果、加载屏幕的动画网格、脉动状态指示灯、关键数值的发光阴影、四角标记。 ## 🛠 技术栈 ``` ┌─────────────────────────────────────────────┐ │ LAYER │ TECHNOLOGY │ ├─────────────────────────────────────────────┤ │ 3D Globe │ CesiumJS 1.111 │ │ Gesture Input │ MediaPipe Hands (WASM) │ │ Flight Data │ adsb.lol / adsb.fi / │ │ │ airplanes.live / OpenSky│ │ Threat Intel │ AlienVault OTX APIv1 │ │ News │ RSS2JSON (RSS proxy) │ │ Rendering │ WebGL (via Cesium) │ │ Framework │ None — Vanilla JS │ │ Bundler │ None — zero build step │ │ Server │ None — static files │ └─────────────────────────────────────────────┘ ``` ## 🚀 快速开始 ### 本地运行(30 秒) ``` # 克隆 git clone https://github.com/vignesh2027/-FLY-VIEW.git cd -FLY-VIEW # 提供服务 (任何静态服务器均可) python3 -m http.server 8080 # 打开 open http://localhost:8080 ``` ### 其他服务器选项 ``` npx serve . # Node.js php -S localhost:8080 # PHP ruby -run -ehttpd . -p8080 # Ruby ``` ### 部署到 GitHub Pages(免费托管) ``` # 已配置 — 只需在设置中启用 # 仓库 → 设置 → 页面 → 来源: main 分支 → / (根目录) ``` 在线地址:`https://vignesh2027.github.io/-FLY-VIEW` ## 📁 项目结构 ``` FLY-VIEW/ ├── index.html # App shell — all UI markup ├── css/ │ └── style.css # Full design system (~600 lines) ├── js/ │ ├── config.js # API keys, endpoints, constants │ ├── globe.js # CesiumJS init, camera, click handler │ ├── flights.js # ADS-B fetch, parse, render entities │ ├── threats.js # OTX threat fetch, country mapping │ ├── news.js # RSS aggregation, region filtering │ ├── gestures.js # MediaPipe gesture classification │ ├── ui.js # Panel updates, stats, toasts │ └── app.js # Orchestrator, events, refresh timers ├── .nojekyll # GitHub Pages Jekyll bypass └── README.md ``` 没有 `node_modules`。没有 `package.json`。无需构建步骤。没有框架。开箱即用。 ## ⌨ 操作说明 | 输入操作 | 对应动作 | |---|---| | `点击地球` | 打开该区域的情报面板 | | `输入航班号 + 点击追踪` | 按呼号搜索航班 | | `按 1` | ATLAS(地图)模式 | | `按 2` | STORM(威胁)模式 | | `按 3` | TRANSIT(交通)模式 | | `按 G` | 切换手势控制面板 | | `按 ESC` | 关闭情报面板 | | `手势 ✈` | V 字形手指 → TRANSIT 模式 | | `手势 🛡` | 平推手势 → STORM 模式 | ## 🌐 API 参考 所有使用的 API 均为**免费层级**,**无需注册**(Cesium Ion 令牌除外)。 ### 网络威胁 — AlienVault OTX ``` Public pulses → https://otx.alienvault.com/otxapi/pulses/?limit=20 ``` 如果遇到 CORS 阻止,则回退到静态威胁档案。 ### 新闻 — RSS2JSON 代理 ``` https://api.rss2json.com/v1/api.json?rss_url={encoded_feed_url} ``` 信息源:TechCrunch · Wired · Ars Technica ### 地球 — Cesium Ion ``` Token: Set in js/config.js → CONFIG.CESIUM_TOKEN Terrain: Ion asset ID 1 (Cesium World Terrain) ``` ## 🔧 配置 编辑 `js/config.js` 进行自定义: ``` const CONFIG = { CESIUM_TOKEN: 'your-token-here', // cesium.com/ion FLIGHT_REFRESH: 15000, // ms between flight updates THREAT_REFRESH: 60000, // ms between threat updates MAX_FLIGHTS_DISPLAY: 800, // max aircraft rendered ARC_HEIGHT_FACTOR: 0.15, // corridor arc curvature COLORS: { FLIGHT: '#FFD700', // aircraft dots FLIGHT_ARC: '#FFA500', // corridor arcs THREAT: '#FF6600', // threat markers THREAT_HIGH: '#FF2200', // severity 8+ threats } }; ``` ## 🧠 工作原理 ``` Browser Load │ ├── CesiumJS renders WebGL globe │ └── Geolocation API → cinematic fly-in to user's city │ ├── Parallel data fetch (every 15–60s) │ ├── adsb.lol → parse ac[] → Cesium point entities │ ├── AlienVault OTX → country threat profiles │ └── RSS feeds → filtered news articles │ ├── Globe click → pick lat/lon → reverse geocode country │ └── Open intel panel with scoped data │ ├── MediaPipe WASM → webcam frame analysis │ └── Landmark classification → gesture events │ └── Mode switch → re-render all entities with new opacity/color ``` 客户端缓存避免了冗余的 API 调用。每个数据源有自己的缓存时长(TTL): - 航班数据:**12 秒**(接近实时) - 威胁数据:**60 秒** - 新闻数据:**120 秒** ## 🌍 支持的地区(情报面板) 点击即可查看情报的系统覆盖了 22 个国家/地区,拥有完整的威胁档案: `印度 · 美国 · 中国 · 俄罗斯 · 巴西 · 英国 · 德国 · 法国` `日本 · 澳大利亚 · 加拿大 · 乌克兰 · 巴基斯坦 · 伊朗 · 土耳其` `尼日利亚 · 朝鲜 · 南非 · 墨西哥 · 印度尼西亚 · 越南 · 以色列` ## 📊 性能指标 | 指标 | 数值 | |---|---| | 渲染的飞机数量 | 最多 800 架 | | 航路弧线 | 10 条命名航路 | | API 调用次数/小时 | ~240(航班)+ 60(威胁)+ 30(新闻) | | 包大小 | ~0 KB(无本地依赖) | | 可交互时间 | < 4 秒 | | 离线可用(已缓存) | ✓ | ## 🔒 隐私保护 - 没有后端。没有数据库。不存储任何用户数据。 - 地理位置仅用于移动相机——从不传输。 - 用于 MediaPipe 的摄像头画面完全在浏览器内运行(WebAssembly)。没有任何帧会离开你的设备。 - 无分析工具。无跟踪像素。无 Cookie。 ## 📄 开源许可 MIT © 2025 [vignesh2027](https://github.com/vignesh2027) 可自由使用、分叉、修改和部署。欢迎注明出处,但不强制要求。
``` ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ █ THE WORLD IS DATA. YOU JUST NEED TO SEE IT. █ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ ``` **[启动 ORION →](https://vignesh2027.github.io/-FLY-VIEW)**
标签:3D地球仪, CesiumJS, CMS安全, FLY-VIEW, JavaScript, ORION INTELLIGENCE GLOBE, Syscall, WebGL, Web开发, 交互式界面, 前端技术, 地球科学, 地理信息系统, 实时数据, 客户端渲染, 情报分析, 数据可视化, 数据层融合, 数据融合, 照片级真实感, 独立应用, 电影风格界面, 网络诊断, 自定义脚本