jagadiswarambati/ResQNet
GitHub: jagadiswarambati/ResQNet
ResQNet 是一个 AI 驱动的灾害响应与资源管理平台,通过本地大模型分析事件并实现公民上报、运营调度与志愿者执行的实时协同闭环。
Stars: 0 | Forks: 1
# ResQNet — AI 驱动的灾害响应与资源管理平台
## 概述
ResQNet 是一个为 Smart India Hackathon (SIH) 打造并专为未来真实场景部署设计的生产级灾害响应平台。它支持公民上报事件,由 AI 进行分析和优先级排序,供运营中心协调响应,以及让志愿者接收和执行任务——所有这一切都在实时状态下进行。
## 技术栈
| 层级 | 技术 |
|-------------|----------------------------------------------------------------------------|
| 前端 | Next.js 15 (App Router), React 19, TypeScript, Tailwind CSS, Shadcn UI |
| 地图 | Leaflet + OpenStreetMap |
| 表单 | React Hook Form + Zod |
| HTTP 客户端 | Axios |
| 后端 | FastAPI, Python 3.11+ |
| ORM | SQLAlchemy + Alembic |
| 认证 | JWT (python-jose) + bcrypt (passlib) |
| 实时 | WebSockets |
| 数据库 | PostgreSQL |
| AI | Ollama + Gemma 3 (本地 LLM) |
| 部署 | Docker, Vercel (前端), Render/Railway (后端) |
## 用户角色
| 角色 | 权限 |
|-------------------|-------------------------------------------------------------------|
| 公民 | 上报事件,追踪实时状态更新 |
| 志愿者 | 接收任务,更新任务状态 |
| 运营中心 | 审核 AI 分析结果,分配志愿者,调配资源 |
## 项目结构
```
ResQNet/
├── frontend/ # Next.js 15 App Router application
├── backend/ # FastAPI application
├── docs/ # Project documentation
├── docker/ # Docker and docker-compose configuration
├── scripts/ # Development utility scripts
├── README.md # Project overview (this file)
├── PROJECT_RULES.md # Permanent architecture & coding standards reference
├── IMPLEMENTATION_PLAN.md # Module progress tracker
└── .env.example # Environment variable template
```
## 核心工作流
```
Citizen Reports Incident
↓
FastAPI validates & stores in PostgreSQL
↓
Gemma 3 (via Ollama) analyzes incident
↓
Operations Center reviews AI recommendation
↓
Assigns Volunteers + Allocates Resources
↓
Volunteers update status in real time
↓
Citizen tracks progress via WebSocket
↓
Incident Resolved
```
## 模块
| # | 模块 | 状态 |
|----|-------------------------|-------------|
| 1 | 项目基础 | ✅ 已完成 |
| 2 | 认证 | ⬜ 待处理 |
| 3 | 公民仪表盘 | ⬜ 待处理 |
| 4 | 事件上报 | ⬜ 待处理 |
| 5 | 运营仪表盘 | ⬜ 待处理 |
| 6 | 志愿者仪表盘 | ⬜ 待处理 |
| 7 | 避难所管理 | ⬜ 待处理 |
| 8 | 资源管理 | ⬜ 待处理 |
| 9 | AI 分析 (Gemma 3) | ⬜ 待处理 |
| 10 | 数据分析 | ⬜ 待处理 |
| 11 | 通知 (WS) | ⬜ 待处理 |
| 12 | 公共落地页 | ⬜ 待处理 |
## 快速开始
### 前置条件
- Node.js 20+
- Python 3.11+
- PostgreSQL 15+
- 已拉取 Gemma 3 的 Ollama (`ollama pull gemma3`)
- Docker + Docker Compose(可选,用于容器化部署)
### 环境配置
```
# 1. Clone 仓库
git clone https://github.com/your-org/resqnet.git
cd resqnet
# 2. 复制 environment template
cp .env.example .env
# 3. 在 .env 中填入你的值
```
### 后端设置
```
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
alembic upgrade head
uvicorn main:app --reload
```
后端访问地址:`http://localhost:8000`
API 文档地址:`http://localhost:8000/docs`
### 前端设置
```
cd frontend
npm install
npm run dev
```
前端访问地址:`http://localhost:3000`
### Docker 设置(全栈)
```
docker-compose -f docker/docker-compose.yml up --build
```
## 文档
| 文档 | 位置 |
|-----------------------|-------------------------------|
| 架构 | `docs/architecture.md` |
| 工作流 | `docs/workflow.md` |
| 数据库 Schema | `docs/database-schema.md` |
| API 规范 | `docs/api-specification.md` |
| 项目规则 | `PROJECT_RULES.md` |
| 实施计划 | `IMPLEMENTATION_PLAN.md` |
## 许可证
MIT License — 详情请参阅 `LICENSE`。
标签:AI风险缓解, AV绕过, FastAPI, 实时事件报告, 应急管理, 本地大模型, 测试用例, 灾害响应, 请求拦截, 资源调度, 逆向工具