Files
AIclinicalresearch/backend/README.md
2025-10-10 17:44:15 +08:00

112 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AI临床研究平台 - 后端服务
## 🏠 导航
- [← 返回项目主页](../README.md)
- [📚 查看完整文档](../docs/README.md)
- [🎨 前端项目](../frontend/README.md)
- [🚀 快速启动指南](../启动指南.md)
---
## 快速开始
### 1. 环境要求
- Node.js >= 18
- PostgreSQL 15+
- Redis 7+
### 2. 安装依赖
```bash
npm install
```
### 3. 配置环境变量
复制`.env.example``.env`并配置:
```bash
cp .env.example .env
```
### 4. 初始化数据库
```bash
# 生成Prisma Client
npm run prisma:generate
# 执行数据库迁移
npm run prisma:migrate
# 可选打开Prisma Studio查看数据
npm run prisma:studio
```
### 5. 启动开发服务器
```bash
npm run dev
```
服务器将在 http://localhost:3001 启动
### 6. 验证服务
访问以下端点验证服务是否正常:
- 健康检查: http://localhost:3001/health
- API入口: http://localhost:3001/api/v1
## 项目结构
```
backend/
├── prisma/
│ └── schema.prisma # 数据库模型定义
├── src/
│ ├── config/
│ │ ├── env.ts # 环境变量配置
│ │ └── database.ts # 数据库连接
│ ├── controllers/ # 控制器层
│ ├── services/ # 业务逻辑层
│ ├── routes/ # 路由定义
│ ├── types/ # TypeScript类型定义
│ ├── utils/ # 工具函数
│ └── index.ts # 应用入口
├── .env # 环境变量不提交到Git
├── .env.example # 环境变量模板
├── package.json # 项目配置
└── tsconfig.json # TypeScript配置
```
## NPM Scripts
- `npm run dev` - 启动开发服务器hot reload
- `npm run build` - 构建生产版本
- `npm run start` - 启动生产服务器
- `npm run prisma:generate` - 生成Prisma Client
- `npm run prisma:migrate` - 执行数据库迁移
- `npm run prisma:studio` - 打开Prisma Studio
## 数据库设计
详见:`../docs/01-设计文档/数据库设计文档.md`
## API文档
详见:`../docs/01-设计文档/API设计规范.md`
## 技术栈
- **框架**: Fastify
- **ORM**: Prisma
- **数据库**: PostgreSQL
- **缓存**: Redis
- **语言**: TypeScript
- **日志**: Pino
## Day 5 完成情况
✅ 初始化后端项目Node.js + TypeScript
✅ 配置Fastify框架
✅ 配置Prisma ORM
✅ 创建数据库表(执行迁移)
✅ 数据库连接测试通过
所有核心功能已完成!🎉