abhiverse01/backstax
GitHub: abhiverse01/backstax
一个零后端、零成本的实时全球情报仪表板,通过聚合地震、自然灾害、市场行情、ISS 轨迹和新闻等多源数据,在交互式世界地图上呈现全球态势并计算威胁评分。
Stars: 1 | Forks: 0
# BACKSTAX
**实时全球情报仪表板。无需后端。零成本。无噪音。**
实时地震事件、市场数据、ISS 跟踪、地球事件和全球新闻 —— 所有这一切都集成在一个可在任何浏览器中打开的单个 HTML 文件中。
## 功能介绍
BACKSTAX 从六个独立的实时数据源拉取数据,并将所有内容渲染在交互式世界地图上,辅以侧边栏提供背景信息。它根据地震、环境和市场信号实时计算 **全球威胁评分**。
| 图层 | 来源 | 刷新频率 |
|---|---|---|
| M4.5+ 级地震 | USGS 全球数据源 | 5 分钟 |
| 自然事件(火灾、风暴、火山) | NASA EONET | 15 分钟 |
| ISS 实时位置 | wheretheiss.at | 10 秒 |
| 加密货币市场 + Sparklines | CryptoCompare | 1 分钟 |
| 全球天气(8 个城市) | Open-Meteo | 加载时 |
| 新闻情报 (BBC / Guardian) | 通过代理链的 RSS | 10 分钟 |
| 全球健康汇总 | disease.sh | 1 小时 |
## 技术栈
```
HTML · CSS · Vanilla JS · Leaflet.js
```
单个文件。零构建步骤。零依赖安装。零 API 密钥。
## 运行
```
# 直接打开
open index.html
# 或者如果您愿意,也可以在本地 serve
npx serve .
python3 -m http.server
```
无需 `.env`。无需 `npm install`。无需配置。
## 架构
```
backstax.html
│
├── CSS Variables → full theming system, light palette
├── 3-column grid → left panel · map · right panel · ticker
│
├── Map Engine → Leaflet + CartoDB Positron tiles
│ ├── qLayer → seismic markers (pulsing, magnitude-scaled)
│ ├── eLayer → NASA event markers (category-colored)
│ ├── iLayer → ISS live dot (updates every 10s)
│ └── nLayer → news geo-pins (deterministic placement)
│
├── Data Engine
│ ├── fetchEarthquakes() → USGS GeoJSON
│ ├── fetchEarthEvents() → NASA EONET v3
│ ├── fetchISS() → wheretheiss.at
│ ├── fetchCrypto() → CryptoCompare pricemultifull + histoday
│ ├── fetchWeather() → Open-Meteo current_weather
│ ├── fetchHealth() → disease.sh aggregate
│ └── fetchNews() → 4-proxy fallback chain → DOMParser
│
└── Threat Engine
└── computeThreat() → weighted score (seismic 45% · events 30% · market 25%)
```
## 新闻代理链
RSS 源不支持 CORS。BACKSTAX 按顺序尝试四个代理,并自动回退:
```
corsproxy.io → allorigins.win/raw → allorigins.win/get → codetabs.com
```
使用 `DOMParser` 原生解析 RSS `- ` 和 Atom `
` 格式。无需第三方 RSS 库。
## 威胁评分
基于实时数据在本地计算得出。非数据源 —— 而是推导出的信号。
```
Score = (seismic_score × 0.45) + (event_score × 0.30) + (market_score × 0.25)
```
| 范围 | 状态 |
|---|---|
| 0 – 19 | 低 (LOW) |
| 20 – 39 | 警戒 (GUARDED) |
| 40 – 59 | 升高 (ELEVATED) |
| 60 – 79 | 高 (HIGH) |
| 80 – 100 | 严重 (CRITICAL) |
## 特性
- 独立切换每个地图图层
- 点击任意事件 → 地图飞越至该位置
- 包含 7 天真实价格历史的 Sparklines(若触发速率限制则使用确定性回退)
- 实时新闻滚动条 —— 悬停时暂停
- 双重新闻源标签页 (BBC World / The Guardian)
- 针对地震、事件和市场活动的全球脉冲条
- UTC 时钟、标头中的威胁指示器芯片、带有风速的城市天气
- 开发者卡片(右下角 `?` 按钮)
## 局限性
- 所有 API 均为公共/免费层级 —— 偶尔会有速率限制
- 新闻代理可用性各异;回退链会静默处理此问题
- ISS 跟踪依赖 `wheretheiss.at` 的正常运行时间
- 无历史数据存储 —— 所有数据均为实时且短暂存在
## 许可证
MIT —— 随意使用、复刻 (fork)、基于此构建。
*由 [Abhishek Shah](https://abhishekshah.vercel.app) 构建*
*[GitHub](https://github.com/abhiverse01) · [LinkedIn](https://linkedin.com/in/theabhishekshah)*
标签:ESC4, GIS, GitHub, HTML/CSS/JS, HTTP/HTTPS抓包, Leaflet.js, OSINT, Vanilla JS, 世界地图, 全球健康数据, 全球情报仪表盘, 单页应用, 后端开发, 国际空间站追踪, 地理信息系统, 地震监测, 多模态安全, 大屏可视化, 威胁情报, 安全态势, 实时处理, 实时数据可视化, 市场数据, 开发者工具, 态势感知, 数据聚合, 无后端, 纯前端, 自然灾害追踪, 轻量级工具, 零依赖