112 lines
2.5 KiB
Markdown
112 lines
2.5 KiB
Markdown
# 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
|
||
✅ 创建数据库表(执行迁移)
|
||
✅ 数据库连接测试通过
|
||
|
||
所有核心功能已完成!🎉
|
||
|