# NioPD **Repository Path**: ztl1978/NioPD ## Basic Information - **Project Name**: NioPD - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-03-25 - **Last Updated**: 2026-03-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 破界实验室一人公司 基于 Docker 的可视化交互平台,支持前后端分离部署。 ## 功能特性 - **前后端分离架构**:React + Express,独立部署,易于扩展 - **Docker 容器化**:一键部署,开箱即用 - **数据持久化**:用户数据通过 Docker Volume 持久化存储 - **API 驱动**:RESTful API 设计,支持多种数据操作 - **用户认证系统**:注册、登录、个人配置管理 - **响应式设计**:支持桌面和移动设备访问 ## 技术栈 ### 前端 - React 18 - Vite - ECharts / D3.js(数据可视化) - React Router ### 后端 - Node.js + Express - RESTful API - JSON 文件存储(可扩展为数据库) ### 部署 - Docker + Docker Compose - Nginx(反向代理) ## 快速开始 ### 前置要求 - Docker 20.10+ - Docker Compose 2.0+ - Git ### 一键部署 ```bash # 克隆项目 git clone https://github.com/your-username/niopd-visualization.git cd niopd-visualization # 启动服务 docker compose up -d # 查看运行状态 docker compose ps ``` 访问 `http://your-server-ip` 即可使用。 ### 本地开发 ```bash # 安装依赖 npm install cd backend && npm install && cd .. # 启动后端(终端1) cd backend && npm start # 启动前端(终端2) npm run dev ``` 访问 `http://localhost:5173` ## 项目结构 ``` . ├── backend/ # 后端服务 │ ├── api/ # API 路由 │ ├── config/ # 配置文件 │ ├── parsers/ # 数据解析器 │ ├── server.js # 服务器入口 │ ├── Dockerfile # 后端 Docker 配置 │ └── package.json ├── src/ # 前端源码 │ ├── views/ # 页面组件 │ ├── services/ # API 服务 │ └── App.jsx # 应用入口 ├── public/ # 静态资源 ├── Dockerfile # 前端 Docker 配置 ├── docker-compose.yml # Docker Compose 配置 ├── nginx.conf # Nginx 配置 └── package.json # 前端依赖 ``` ## API 接口 ### 认证相关 - `POST /api/auth/register` - 用户注册 - `POST /api/auth/login` - 用户登录 - `GET /api/user/profile` - 获取用户信息 - `PUT /api/user/profile` - 更新用户信息 ### 数据管理 - `GET /api/user/conversations` - 获取对话历史 - `POST /api/user/conversations` - 保存对话 - `DELETE /api/user/conversations/:id` - 删除对话 - `GET /api/user/config` - 获取用户配置 - `POST /api/user/config` - 保存用户配置 ### 健康检查 - `GET /api/health` - 服务健康状态 ## 常用命令 ```bash # 查看日志 docker compose logs -f # 重启服务 docker compose restart # 停止服务 docker compose down # 更新部署 git pull && docker compose up -d --build # 数据备份 docker run --rm -v niopd_backend-data:/data -v $(pwd):/backup alpine tar czf /backup/backup.tar.gz -C /data . ``` ## 环境配置 项目使用环境变量进行配置,可以复制示例文件并修改: ```bash # 前端配置 cp .env.example .env # 后端配置 cp backend/.env.example backend/.env ``` ## 部署文档 详细的部署指南请查看: - [DEPLOYMENT.md](./DEPLOYMENT.md) - 完整部署文档 - [DOCKER_QUICKSTART.md](./DOCKER_QUICKSTART.md) - 快速部署指南 ## 安全注意事项 - 用户数据存储在 `backend/api/data/` 目录,已通过 `.gitignore` 排除 - 生产环境建议使用 HTTPS - 建议使用 bcrypt 替换当前的 SHA256 密码哈希 - 建议使用数据库(MongoDB/PostgreSQL)替代 JSON 文件存储 - 定期备份用户数据 ## 许可证 请参考项目根目录的 LICENSE 文件。 ## 贡献 欢迎提交 Issue 和 Pull Request。 ## 技术支持 如遇到问题: 1. 查看 [DEPLOYMENT.md](./DEPLOYMENT.md) 故障排查部分 2. 检查 GitHub Issues 3. 提交新的 Issue 并附带错误日志