23016300/Limpopo-ems
GitHub: 23016300/Limpopo-ems
一套面向应急响应与车辆追踪的全栈管理系统,解决多角色协同调度和实时事件监控问题。
Stars: 0 | Forks: 0
# 🚨 Limpopo 应急管理系统 (Limpopo-EMS)
[](LICENSE)
[](https://react.dev)
[](https://nodejs.org)
[](https://www.postgresql.org)
---
## 📸 截图
| 管理员仪表盘 | 警察仪表盘 | 公民界面 |
| ---------------------------- | ------------------------------ | -------------------------------- |
|  |  |  |
---
## ✨ 功能
- 🔐 多角色身份验证(管理员、警察、救护车、交通、医院、公民)
- 📍 结合 Mapbox GL JS 的实时 GPS 追踪
- 🚑 带有基于距离单位推荐的智能调度系统
- 📊 包含事件趋势和响应指标的分析仪表盘
- 🏥 结合实时床位可用性的医院集成
- 🔔 通过 Socket.io 进行实时通知
- 📱 完全响应式设计,适用于移动设备、平板电脑和桌面设备
---
## 🏗️ 技术栈
**前端:** React 19, Vite, Tailwind CSS, Mapbox GL JS, Socket.io Client, Axios, Recharts
**后端:** Node.js, Express.js, PostgreSQL, Socket.io, JWT, bcryptjs
**工具:** Git, GitHub, ESLint, Prettier, dotenv
---
## 📁 项目结构
```
limpopo-ems/
├── client/ # React frontend
│ ├── src/
│ │ ├── components/
│ │ ├── config/
│ │ ├── hooks/
│ │ ├── App.jsx
│ │ └── main.jsx
│ ├── package.json
│ └── vite.config.js
├── server/ # Node.js backend
│ ├── routes/
│ ├── middleware/
│ ├── socket/
│ ├── db.js
│ ├── schema.sql
│ ├── index.js
│ └── package.json
├── .gitignore
├── README.md
└── LICENSE
```
## 🚀 快速开始
### 前置条件
- Node.js v18+
- PostgreSQL v14+
- npm 或 yarn
- Mapbox Access Token(可在 mapbox.com 免费获取)
### 安装说明
1. 克隆仓库:
```
git clone https://github.com/23016300/Limpopo-ems.git
cd Limpopo-ems
```
2. 安装依赖:
```
cd server \&\& npm install
cd ../client \&\& npm install
```
3. 创建 `server/.env`:
```
DATABASE\_URL=postgresql://user:pass@localhost:5432/limpopo\_ems
JWT\_SECRET=your\_secret\_key
PORT=5000
MAPBOX\_TOKEN=your\_mapbox\_token
```
4. 创建 `client/.env`:
```
VITE\_MAPBOX\_TOKEN=your\_mapbox\_token
VITE\_API\_URL=http://localhost:5000/api
```
5. 设置数据库:
```
cd server
psql -U your\_username -d limpopo\_ems -f schema.sql
```
6. 启动服务器:
```
\# Terminal 1: Backend
cd server \&\& npm run dev
\# Terminal 2: Frontend
cd client \&\& npm run dev
```
标签:MITM代理, 地图集成, 应急管理系统, 测试用例, 自定义脚本, 调度系统, 车辆追踪