定义全栈应用程序的开发设置和工作流:
# 检查Node.js版本
node --version # 需要 >= 20.18.3
# 检查Docker和Docker Compose
docker --version
docker-compose --version
# 检查MySQL和Redis客户端
mysql --version
redis-cli --version
# 克隆项目
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服务
# 启动所有服务
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
# 前端 (.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