jicoing/bengallive
GitHub: jicoing/bengallive
一款轻量级实时安全态势追踪应用,通过交互式地图和多源数据聚合帮助民众在选举期间了解危险区域和突发事件。
Stars: 0 | Forks: 0
# BengalLive — 孟加拉实时追踪器
一款面向印度西孟加拉邦的实时动态追踪应用程序。旨在帮助民众在 2026 年 5 月 4 日选举结果日当天或之后,随时了解危险区域、交通中断情况以及潜在冲突等信息。
https://jicoing.github.io/bengallive/
## 功能特性
- **交互式地图** — 基于 Leaflet 技术的地图,显示西孟加拉邦各地的风险区域
- **热力图可视化** — 直观展示事件和危险区域的密度分布
- **实时动态提醒** — 聚合来自多个信息源(Reddit、Twitter、交通、警方、新闻)的实时警报
- **风险区域** — 采用颜色编码(危急、高、中、安全)的区域及半径指示器
- **紧急联系方式** — 快速访问警察、救护车、消防及其他紧急求救号码
- **安全通道** — 避开冲突的推荐路线
- **需避开区域** — 建议远离的已知高风险地点
- **倒计时器** — 显示距离选举结果公布的剩余天数/小时数
## 技术栈
- **HTML5** — 语义化标记
- **CSS3** — 结合 CSS 变量和毛玻璃效果的自定义样式
- **JavaScript (ES6+)** — 原生 JS,搭配 Leaflet.js 地图库
- **Leaflet.js** — 开源的移动端友好型地图库
- **Leaflet Heat** — 用于可视化展示的热力图插件
- **实时 API 集成** — 从多个社交平台信息源获取实时数据
## 快速开始
1. 克隆或下载本仓库
2. 在浏览器中打开 `index.html`
3. 应用程序将自动获取实时数据
无需构建步骤或服务器——可直接在浏览器中运行。完全兼容 GitHub Pages 等静态托管服务。
## 项目结构
```
bengalelections/
├── index.html # Main HTML file
├── app.js # Application logic and state management
├── style.css # Styles and theming
└── README.md # This file
```
## 数据来源
应用程序聚合了来自以下渠道的实时数据:
- **Reddit** — 来自 r/kolkata 及相关子版块的实时帖子
- **Twitter/X** — 包含 #BengalElections 及相关话题标签的实时推文
- **交通 API** — 实时交通和道路封闭数据
- **警方信息源** — 官方执法部门最新通报
- **新闻 API** — 来自地方和全国媒体的突发新闻
## 热点地区
涵盖西孟加拉邦 20 多个预定义热点地区,风险评估基于以下因素:
- 历史政治暴力数据
- 当前实地报告
- 选举委员会区域分类
## 流程图
```
flowchart TD
A[User Opens App] --> B[DOM Content Loaded]
B --> C[Initialize Map]
C --> D[Load Hotspot Data]
D --> E[Draw Danger Zones]
E --> F[Draw Heatmap]
F --> G[Fetch Live Alerts]
G --> H[Process Alerts]
H --> I{Risk Level}
I -->|Critical| J[Flash Header Alert]
I -->|High| K[Orange Marker]
I -->|Moderate| L[Yellow Marker]
I -->|Low| M[Green Marker]
J --> N[Add Incident Marker]
K --> N
L --> N
M --> N
N --> O[Render Alert Feed]
O --> P[Update Stats Panel]
P --> Q[Start Interval Timers]
Q --> R[Every 8s: Generate Alert]
Q --> S[Every 1s: Update Countdown]
Q --> T[Every 5s: Update Stats]
Q --> U[Every 30s: Refresh Data]
R --> V[New Alert]
V --> N
```
### 流程说明
1. **初始化** — 应用加载,并初始化带有深色主题图块的 Leaflet 地图
2. **加载热点** — 加载 20 多个地点及其风险评估
3. **可视化** — 将危险区域渲染为彩色圆形,并添加热力图层
4. **生成警报** — 定时每 8 秒生成/刷新警报
5. **用户交互** — 点击警报可缩放地图、按信息源进行过滤、切换图层
## 许可证
MIT License
标签:CMS安全, CSS3, ES6, Glassmorphism, HTML5, JavaScript, Leaflet.js, Web地图, 交互式地图, 交通中断, 公共安全, 冲突预警, 印度大选, 危险区域, 安全路线, 实时处理, 实时警报, 实时追踪, 数据可视化, 数据聚合, 热力图可视化, 社交媒体监控, 紧急联系人, 自定义脚本, 西孟加拉邦, 选举安全, 静态网页