12-development-workflow.md 1.9 KB

12. Development Workflow

定义全栈应用程序的开发设置和工作流:

12.1 Local Development Setup

Prerequisites

# 检查Node.js版本
node --version  # 需要 >= 20.18.3

# 检查Docker和Docker Compose
docker --version
docker-compose --version

# 检查MySQL和Redis客户端
mysql --version
redis-cli --version

Initial Setup

# 克隆项目
git clone <repository-url>
cd shadcn-admin-template

# 安装依赖
npm install

# 复制环境变量文件
cp .env.example .env

# 启动开发环境
npm run dev

# 或者启动特定服务
npm run dev:admin    # 只启动管理后台
npm run dev:api      # 只启动API服务

Development Commands

# 启动所有服务
npm run dev

# 启动前端开发服务器(管理后台)
cd apps/admin && npm run dev

# 启动后端开发服务器
cd apps/api && npm run dev

# 运行测试
npm run test

# 运行类型检查
npm run type-check

# 运行代码检查
npm run lint

12.2 Environment Configuration

Required Environment Variables

# 前端 (.env.local)
VITE_API_URL=http://localhost:8080
VITE_APP_NAME=shadcn管理后台

# 后端 (.env)
NODE_ENV=development
PORT=8080
JWT_SECRET=your-super-secret-jwt-key
JWT_EXPIRES_IN=7d

# 数据库连接
DB_HOST=localhost
DB_PORT=3306
DB_USERNAME=root
DB_PASSWORD=your-mysql-password
DB_DATABASE=d8dai

# Redis连接
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=

# MinIO连接
MINIO_ENDPOINT=localhost
MINIO_PORT=9000
MINIO_ACCESS_KEY=minioadmin
MINIO_SECRET_KEY=minioadmin
MINIO_BUCKET=uploads

# 共享环境变量
APP_NAME=shadcn-admin-template
LOG_LEVEL=info

开发环境快速启动脚本

#!/bin/bash
# scripts/start-dev.sh

echo "启动开发环境..."

# 启动Docker服务
docker-compose up -d

# 等待数据库就绪
echo "等待数据库就绪..."
sleep 10

# 运行数据库迁移
cd apps/api && npx typeorm migration:run

# 启动开发服务器
cd ../.. && npm run dev