一个安全的多语言保险申请门户,使用 React 和 FastAPI 构建。
- 🔐 安全的用户认证和授权
- 🌍 多语言支持(中文、英文、西班牙语)
- 📁 文件上传和文档管理
- 📧 邮件导出功能
- 👨💼 管理员仪表板
- 📱 响应式设计,支持移动端和桌面端
- 📊 完整的审计日志
- 🚀 生产就绪的 Docker 部署
- React 18 + TypeScript
- Material-UI (MUI) 组件库
- React Router 路由管理
- React Hook Form 表单处理
- i18next 国际化
- Axios API 通信
- FastAPI + Python 3.11+
- SQLAlchemy ORM + MySQL
- Pydantic 数据验证
- JWT 身份认证
- 邮件服务集成
- 文件存储管理
- 完整的日志和监控
- Node.js 18+
- Python 3.11+
- MySQL 8.0+
- Docker 和 Docker Compose(容器化部署)
- 克隆仓库:
git clone https://github.com/your-username/FormVault.git
cd FormVault- 设置后端:
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt- 设置前端:
cd frontend
npm install- 配置环境变量:
# 后端
cp backend/.env.template backend/.env
# 编辑 backend/.env 配置文件
# 前端
cp frontend/.env.template frontend/.env
# 编辑 frontend/.env 配置文件- 运行数据库迁移:
cd backend
alembic upgrade head- 启动开发服务器:
# 后端(在 backend 目录下)
uvicorn app.main:app --reload
# 前端(在 frontend 目录下)
npm start访问应用:
- 前端:http://localhost:3000
- 后端 API:http://localhost:8000
- API 文档:http://localhost:8000/docs
- 配置生产环境变量:
cp backend/.env.template backend/.env.production
cp frontend/.env.template frontend/.env.production
# 编辑 .env.production 文件设置生产环境配置- 使用 Docker Compose 部署:
docker-compose -f docker-compose.prod.yml up -d后端运行后,访问:
- Swagger UI:
http://localhost:8000/docs - ReDoc:
http://localhost:8000/redoc
cd backend
pytestcd frontend
npm testcd frontend
npm run cypress:runFormVault/
├── backend/ # FastAPI 后端
│ ├── app/
│ │ ├── api/ # API 路由
│ │ ├── core/ # 核心配置
│ │ ├── models/ # 数据模型
│ │ ├── services/ # 业务逻辑
│ │ ├── middleware/ # 中间件
│ │ └── utils/ # 工具函数
│ ├── tests/ # 测试文件
│ ├── alembic/ # 数据库迁移
│ └── requirements.txt # Python 依赖
├── frontend/ # React 前端
│ ├── src/
│ │ ├── components/ # React 组件
│ │ ├── pages/ # 页面组件
│ │ ├── services/ # API 服务
│ │ ├── hooks/ # 自定义 Hooks
│ │ ├── i18n/ # 国际化配置
│ │ └── contexts/ # React Context
│ ├── public/ # 静态资源
│ └── package.json # Node.js 依赖
└── docker-compose.prod.yml # 生产环境 Docker 配置
- 多步骤表单填写
- 文件上传(支持拖拽)
- 实时表单验证
- 多语言界面切换
- 移动端友好设计
- 申请管理仪表板
- 用户数据导出
- 系统监控和日志
- 审计跟踪
- JWT 身份认证
- 数据加密传输
- 文件类型验证
- 速率限制
- CORS 保护
- Fork 本仓库
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
如有问题或需要支持,请在 GitHub 仓库中创建 issue。
FormVault - 让保险申请更简单、更安全 🚀