智能农业测试平台
基于 Next.js 14 (App Router) 和 PostgreSQL 的测试管理平台。
技术栈
- 前端框架: Next.js 14+ (App Router)
- 语言: TypeScript
- 样式: Tailwind CSS
- 数据库: PostgreSQL
- ORM: Prisma
- 认证: NextAuth.js
- 表单: React Hook Form + Zod
- 状态管理: Zustand
项目结构
hm-smart-agri-test-platform/
├── src/ # 源代码目录
│ ├── app/ # Next.js App Router
│ │ ├── api/ # API 路由
│ │ ├── auth/ # 认证相关页面
│ │ ├── dashboard/ # 仪表板页面
│ │ ├── layout.tsx # 根布局
│ │ └── page.tsx # 首页
│ ├── components/ # 可复用组件
│ │ ├── ui/ # 基础 UI 组件
│ │ ├── forms/ # 表单组件
│ │ └── layout/ # 布局组件
│ ├── lib/ # 工具库
│ │ ├── db/ # 数据库配置
│ │ ├── utils/ # 工具函数
│ │ ├── services/ # 服务层
│ │ ├── middleware/ # 中间件
│ │ ├── auth/ # 认证相关
│ │ └── constants/ # 常量定义
│ ├── hooks/ # 自定义 Hooks
│ ├── types/ # TypeScript 类型定义
│ └── middleware.ts # Next.js 中间件
├── prisma/ # Prisma 相关
│ └── schema.prisma # 数据库模型
├── scripts/ # 脚本文件
├── tests/ # 测试文件
├── docs/ # 文档目录
└── public/ # 静态资源
快速开始
1. 安装依赖
npm install
# 或
yarn install
# 或
pnpm install
2. 配置环境变量
复制 .env.example 为 .env.local 并填写相应的配置:
cp .env.example .env.local
编辑 .env.local 文件,配置数据库连接和其他环境变量。
3. 设置数据库
# 生成 Prisma Client
npm run db:generate
# 推送数据库模式(开发环境)
npm run db:push
# 或使用迁移(生产环境推荐)
npm run db:migrate
4. 启动开发服务器
npm run dev
打开 http://localhost:3000 查看应用。
可用脚本
npm run dev- 启动开发服务器npm run build- 构建生产版本npm run start- 启动生产服务器npm run lint- 运行 ESLintnpm run format- 格式化代码npm run type-check- TypeScript 类型检查npm run db:generate- 生成 Prisma Clientnpm run db:push- 推送数据库模式npm run db:migrate- 运行数据库迁移npm run db:studio- 打开 Prisma Studio
数据库设计
核心表
- Users - 用户表
- Projects - 项目表
- ProjectMembers - 项目成员表
- TestCases - 测试用例表
- TestRuns - 测试执行表
- TestResults - 测试结果表
详细设计请查看 prisma/schema.prisma 文件。
开发规范
- 使用 TypeScript 严格模式
- 遵循 ESLint 规则
- 使用 Prettier 格式化代码
- 组件使用 PascalCase
- 函数/变量使用 camelCase
- 常量使用 UPPER_SNAKE_CASE
下一步
- 配置数据库连接
- 运行数据库迁移
- 实现用户认证功能
- 开发核心业务功能
许可证
MIT
Description
Languages
TypeScript
100%