Skip to main content

mineadmin

创建 MineAdmin 全栈管理后台项目。触发场景:用户说"创建项目"、"初始化项目"、 "新建项目"、"MineAdmin"、"PHP 后台"、"Swoole 后台"、"Hyperf 后台"、 "PHP admin"、"高性能 PHP 管理后台"、"协程 PHP 后台", 或任何涉及用 PHP (Hyperf/Swoole) 后端创建新管理后台项目的场景。 也适用于:用户想要"Swoole 高性能"、"协程 PHP"、"高并发 PHP"。

Informações da origem

Repositório
gszyboy/opencode-config
Última atividade na origem
11 de maio de 2026 às 02:02
Idioma detectado do SKILL.md
chinês
Estrelas
0
Forks
0

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
5 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
mineadmin
description
创建 MineAdmin 全栈管理后台项目。触发场景:用户说"创建项目"、"初始化项目"、 "新建项目"、"MineAdmin"、"PHP 后台"、"Swoole 后台"、"Hyperf 后台"、 "PHP admin"、"高性能 PHP 管理后台"、"协程 PHP 后台", 或任何涉及用 PHP (Hyperf/Swoole) 后端创建新管理后台项目的场景。 也适用于:用户想要"Swoole 高性能"、"协程 PHP"、"高并发 PHP"。
# MineAdmin Skill 整合 **MineAdmin** (Hyperf 3.x + Swoole 5 后端 + Vue3 前端),创建完整的全栈管理后台项目。 ## 项目信息 - **GitHub**: https://github.com/mineadmin/MineAdmin - **文档**: https://doc.mineadmin.com/ - **Stars**: 1187+ - **协议**: AGPL / 商业授权 - **最新版本**: v3.0.9 ## 核心技术栈 | 层 | 技术 | |---|------| | **后端框架** | Hyperf 3.x + Swoole 5 | | **PHP 版本** | 8.1+ | | **前端框架** | Vue 3 + Composition API + TypeScript | | **UI 组件** | Arco Design Pro | | **构建工具** | Vite 5 | | **状态管理** | Pinia | | **后端 ORM** | Hyperf\Database | | **数据库** | MySQL / PostgreSQL / SQL Server | | **认证** | 双 Token (Access + Refresh) | | **部署** | Docker + Docker Compose | ## 项目结构 ``` {project_root}/ ├── mineadmin/ # MineAdmin 主仓库 (前后端一体) │ ├── backend/ # Hyperf 后端 │ │ ├── app/ │ │ │ ├── Controller/ │ │ │ ├── Model/ │ │ │ └── Service/ │ │ ├── config/ │ │ ├── docker-compose.yml │ │ └── Dockerfile │ └── frontend/ # Vue3 前端 │ ├── src/ │ │ ├── api/ │ │ ├── stores/ │ │ └── views/ │ ├── Dockerfile │ └── package.json └── README.md ``` --- ## 步骤 1: 克隆 MineAdmin ### 1.1 克隆仓库 ```bash git clone https://github.com/mineadmin/MineAdmin.git mineadmin cd mineadmin ``` ### 1.2 安装依赖 ```bash # 后端依赖 cd backend composer install # 前端依赖 cd ../frontend pnpm install ``` --- ## 步骤 2: 环境配置 ### 2.1 后端环境变量 复制环境配置示例文件: ```bash cd backend cp .env.example .env ``` 编辑 `backend/.env`: ```env # 应用配置 APP_ENV=dev APP_DEBUG=true APP_PORT=9501 # 数据库配置 (MySQL/PostgreSQL/SQL Server 三选一) DB_DRIVER=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=mineadmin DB_USERNAME=root DB_PASSWORD=your_password # Redis 配置 REDIS_HOST=127.0.0.1 REDIS_PORT=6379 REDIS_PASSWORD= REDIS_DB=0 # JWT 配置 JWT_SECRET=your-super-secret-key JWT_ACCESS_EXPIRE=7200 JWT_REFRESH_EXPIRE=604800 # Swoole 配置 SWOOLE_HTTP_PORT=9501 WORKER_NUM=4 ``` ### 2.2 数据库初始化 ```bash cd backend # 创建数据库 (MySQL) mysql -u root -p -e "CREATE DATABASE mineadmin DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" # 运行迁移 php bin/hyperf.php migrate # 初始化数据 (管理员账号) php bin/hyperf.php db:seed ``` ### 2.3 前端环境变量 ```bash cd ../frontend cp .env.example .env.development ``` 编辑 `frontend/.env.development`: ```env # API 地址 VITE_APP_API_URL=http://localhost:9501 VITE_APP_BASE_API=/ ``` --- ## 步骤 3: 启动开发服务 ### 3.1 启动后端 (Swoole) ```bash cd backend # 开发模式 (热重载) php bin/hyperf.php start # 或使用 Composer 脚本 composer dev ``` ### 3.2 启动前端 (Vite) ```bash cd frontend # 开发模式 pnpm dev # 构建生产版本 pnpm build ``` ### 3.3 访问 - **前端**: http://localhost:5173 - **后端 API**: http://localhost:9501 - **默认账号**: admin / mineadmin123 --- ## 步骤 4: Docker Compose 部署 ### 4.1 使用 MineAdmin 内置 Docker ```bash cd backend # 启动所有服务 (数据库 + Redis + 后端) docker compose up -d # 查看日志 docker compose logs -f ``` ### 4.2 生产环境 Docker 配置 创建 `docker-compose.prod.yml`: ```yaml version: '3.8' services: frontend: build: context: ./frontend dockerfile: Dockerfile ports: - "80:80" depends_on: - backend networks: - mineadmin-network backend: build: context: ./backend dockerfile: Dockerfile ports: - "9501:9501" environment: - APP_ENV=prod - APP_DEBUG=false - DB_DRIVER=mysql - DB_HOST=db - DB_PORT=3306 - DB_DATABASE=mineadmin - DB_USERNAME=mineadmin - DB_PASSWORD=mineadmin_password - REDIS_HOST=redis - REDIS_PORT=6379 depends_on: - db - redis networks: - mineadmin-network volumes: - ./backend/runtime:/app/runtime db: image: mysql:8.0 environment: MYSQL_ROOT_PASSWORD: root_password MYSQL_DATABASE: mineadmin MYSQL_USER: mineadmin MYSQL_PASSWORD: mineadmin_password ports: - "3306:3306" volumes: - mysql_data:/var/lib/mysql networks: - mineadmin-network redis: image: redis:7-alpine ports: - "6379:6379" volumes: - redis_data:/data networks: - mineadmin-network volumes: mysql_data: redis_data: networks: mineadmin-network: driver: bridge ``` ### 4.3 前端 Dockerfile 创建 `frontend/Dockerfile`: ```dockerfile FROM node:20-alpine as builder WORKDIR /app COPY package.json pnpm-lock.yaml ./ RUN corepack enable && pnpm install COPY . . RUN pnpm build FROM nginx:alpine COPY --from=builder /app/dist /usr/share/nginx/html COPY nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] ``` ### 4.4 Nginx 配置 创建 `frontend/nginx.conf`: ```conf server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.html; # 前端路由 (SPA) location / { try_files $uri $uri/ /index.html; } # API 代理到后端 location /api/ { proxy_pass http://backend:9501/; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } ``` --- ## 步骤 5: CRUD 代码生成 MineAdmin 提供图形化 CRUD 生成器。 ### 5.1 使用命令行生成 ```bash cd backend # 生成 CRUD php bin/hyperf.php gen:curd User # 生成迁移文件 php bin/hyperf.php gen:migration create_users_table # 生成模型 php bin/hyperf.php gen:model User ``` ### 5.2 手动创建 CRUD 创建控制器 `app/Controller/UserController.php`: ```php <?php declare(strict_types=1); namespace App\Controller; use Mine\Annotation\Route; use Mine\MineController; #[Route] class UserController extends MineController { #[Route(methods: 'GET', path: '/user/list')] public function list(): Response { $page = $this->request->input('page', 1); $pageSize = $this->request->input('pageSize', 10); $result = $this->service->paginate($page, $pageSize); return $this->success($result); } #[Route(methods: 'POST', path: '/user')] public function save(): Response { $data = $this->request->all(); $result = $this->service->create($data); return $this->success($result); } #[Route(methods: 'PUT', path: '/user/{id}')] public function update(int $id): Response { $data = $this->request->all(); $result = $this->service->update($id, $data); return $this->success($result); } #[Route(methods: 'DELETE', path: '/user/{id}')] public function delete(int $id): Response { $this->service->delete($id); return $this->success(); } } ``` --- ## 步骤 6: 权限配置 ### 6.1 角色权限 访问后台管理 -> 系统管理 -> 角色管理 1. 创建角色 (如: admin, editor) 2. 分配菜单权限 3. 分配数据权限 ### 6.2 用户权限 访问后台管理 -> 系统管理 -> 用户管理 1. 创建用户 2. 分配角色 3. 设置部门归属 ### 6.3 菜单权限 ``` 系统管理 ├── 用户管理 (user) │ ├── 用户列表 (user:list) │ ├── 用户新增 (user:save) │ ├── 用户编辑 (user:update) │ └── 用户删除 (user:delete) ├── 角色管理 (role) └── 菜单管理 (menu) ``` --- ## 常用命令 ```bash # 后端 cd backend # 启动 (开发) php bin/hyperf.php start # 启动 (生产) php bin/hyperf.php start -d # 迁移 php bin/hyperf.php migrate # 回滚迁移 php bin/hyperf.php migrate:rollback # 生成 CRUD php bin/hyperf.php gen:curd {name} # 清理缓存 php bin/hyperf.php cache:clear # 前端 cd frontend # 安装依赖 pnpm install # 开发服务器 pnpm dev # 构建 pnpm build # 构建 SSR 版本 pnpm build:ssr ``` --- ## 后端 API 端点参考 MineAdmin 后端提供的管理接口: | 方法 | 端点 | 说明 | |------|------|------| | POST | /api/system/user/login | 登录 | | POST | /api/system/user/refresh | 刷新 Token | | GET | /api/system/user/info | 获取用户信息 | | POST | /api/system/user/logout | 登出 | | GET | /api/system/menu/list | 获取菜单列表 | | GET | /api/system/role/list | 获取角色列表 | | CRUD | /api/system/{module}/{action} | 通用 CRUD | --- ## 故障排查 ### Swoole 启动失败 1. 检查 PHP 版本 (需要 8.1+) 2. 检查 Swoole 扩展是否安装: `php -m | grep swoole` 3. 查看错误日志: `tail -f runtime/log/*.log` ### 数据库连接失败 1. 确认数据库服务运行中 2. 检查 `.env` 数据库配置 3. 确认数据库已创建: `mysql -u root -p -e "SHOW DATABASES;"` ### 前端无法访问后端 API 1. 检查后端是否启动: `curl http://localhost:9501` 2. 检查 Vite 代理配置 (vite.config.ts) 3. 检查 CORS 配置 (backend/config/autoload/cors.php) ### 权限不生效 1. 清除缓存: `php bin/hyperf.php cache:clear` 2. 检查用户角色配置 3. 检查菜单权限标识 --- ## 相关资源 - [MineAdmin GitHub](https://github.com/mineadmin/MineAdmin) - [MineAdmin 文档](https://doc.mineadmin.com/) - [Hyperf 框架](https://hyperf.wiki/) - [Swoole 文档](https://www.swoole.com/) - [Arco Design Vue](https://arco.design/vue/component/introduce) --- ## 与 vue-pure-admin 的区别 | 维度 | MineAdmin | vue-pure-admin | |------|-----------|----------------| | **前端** | 自带 Vue3 + **Arco Design** | 自带 Vue3 + Element Plus |
Ver no GitHub
Este SKILL.md e muito grande, entao o SkillsMP mostra aqui apenas a primeira secao. Ver no GitHub