# Kylin Scaffold

Kylin 企业级应用脚手架 — 类似 `laravel/laravel` 的项目模板，`composer create-project` 即可创建完整项目。

## 功能特性

- **项目模板**：`composer create-project kylin/scaffold my-app` 一键创建
- **交互式安装**：选择安装哪些 Kylin 模块
- **全包集成**：预配置所有 Kylin 扩展包
- **AdminLTE 后台**：内置后台仪表盘模板
- **许可证验证**：自动集成许可证中间件
- **API 路由**：预配置 API 路由和 CORS
- **Vite 构建**：Bootstrap 5.3 + Vite 前端构建

## 快速创建项目

```bash
composer create-project kylin/scaffold my-app
cd my-app
```

创建项目后自动执行：
1. `key:generate` — 生成应用密钥
2. `kylin:scaffold-install` — 交互式安装模块
3. `migrate` — 运行数据库迁移

## 手动安装（已有项目）

```bash
composer require kylin/scaffold
php artisan kylin:scaffold-install
```

### 安装选项

```bash
# 安装所有模块
php artisan kylin:scaffold-install --all

# 强制重新安装
php artisan kylin:scaffold-install --force

# 跳过数据库迁移
php artisan kylin:scaffold-install --skip-migration
```

## 项目模板结构

```
project/
├── app/
│   ├── Http/Controllers/Controller.php
│   ├── Models/User.php              # 集成 HasRoles
│   └── Providers/AppServiceProvider.php
├── bootstrap/
│   ├── app.php                      # 含 API 路由 + 许可证中间件
│   └── providers.php
├── config/                          # 各包配置文件
├── database/
│   ├── factories/UserFactory.php
│   └── seeders/DatabaseSeeder.php   # 自动调用 RBAC Seeder
├── public/
├── resources/
│   ├── css/app.css
│   ├── js/app.js
│   └── views/
│       ├── welcome.blade.php
│       └── admin/dashboard.blade.php
├── routes/
│   ├── web.php                      # 含 /admin 路由组
│   ├── api.php                      # 含 /health 健康检查
│   └── console.php
├── .env.example                     # 含全部 Kylin 配置项
├── composer.json                    # type=project
├── package.json                     # Bootstrap 5.3 + Vite
└── vite.config.js
```

## 可安装模块

| 模块 | 说明 | 必选 |
|------|------|------|
| core | 核心基础 | 是 |
| licensing | 许可证管理 | 是 |
| rbac | RBAC 权限 | 是 |
| user | 用户管理 | 否 |
| auth | 认证授权 | 否 |
| notification | 通知系统 | 否 |
| storage | 多云存储 | 否 |
| excel | Excel 导入导出 | 否 |
| settings | 系统设置 | 否 |
| audit-log | 审计日志 | 否 |
| dictionary | 数据字典 | 否 |
| adminlte | AdminLTE 后台 | 否 |
| media | 媒体管理 | 否 |
| activity | 活动日志 | 否 |
| world | 地区数据 | 否 |

## 依赖

- PHP ^8.5
- Laravel ^13.0
- kylin/core + kylin/licensing + kylin/rbac + ...

## 许可证

私有软件，未经授权禁止使用。
