PHPackages                             lartrix/lartrix - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. lartrix/lartrix

ActiveLibrary[Admin Panels](/categories/admin)

lartrix/lartrix
===============

Laravel 后台管理包，为 trix 前端提供 API 接口

1.0.72(3w ago)149MITPHPPHP ^8.1CI passing

Since Jan 26Pushed 3w agoCompare

[ Source](https://github.com/maliang/lartrix)[ Packagist](https://packagist.org/packages/lartrix/lartrix)[ RSS](/packages/lartrix-lartrix/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (10)Dependencies (64)Versions (72)Used By (0)

Lartrix
=======

[](#lartrix)

Laravel 后台管理包，为 [Trix](https://github.com/maliang/trix) 前端提供 API 接口。

特性
--

[](#特性)

- 🔐 用户认证与权限管理（基于 Laravel Sanctum + Spatie Permission）
- 👥 用户、角色、权限管理
- 📋 菜单管理（支持树形结构）
- ⚙️ 系统设置
- 📦 模块化开发支持（基于 nwidart/laravel-modules）
- 🎨 PHP Schema Builder - 用 PHP 构建前端界面

环境要求
----

[](#环境要求)

- PHP &gt;= 8.1
- Laravel &gt;= 10.0

安装
--

[](#安装)

```
composer require lartrix/lartrix
```

运行安装命令：

```
php artisan lartrix:install
```

安装过程会：

1. 发布前端资源到 `public/admin`
2. 发布配置文件和迁移文件
3. 执行数据库迁移
4. 创建超级管理员角色和权限
5. 创建默认菜单
6. 交互式创建管理员账户
7. 创建 AI 开发指南文件（AGENTS.md、CLAUDE.md）

访问后台
----

[](#访问后台)

安装完成后访问 `/admin/` 进入后台管理系统。

配置
--

[](#配置)

配置文件位于 `config/lartrix.php`：

```
return [
    'api_prefix' => 'api/admin',        // API 路由前缀
    'guard' => 'sanctum',               // 认证守卫
    'super_admin_role' => 'super-admin', // 超级管理员角色名
    'models' => [...],                  // 模型类映射
    'controllers' => [...],             // 控制器类映射
];
```

模块市场只使用 `module_market` 配置，不再读取 `module_registry` 或 `module_market.api_url`：

```
'module_market' => [
    'enabled' => env('LARTRIX_MODULE_MARKET_ENABLED', true),
    'url' => env('LARTRIX_MODULE_MARKET_URL', ''),
    'auth_key' => env('TRIX_AUTH_KEY', ''),
    'signature_key' => env('LARTRIX_MODULE_MARKET_SIGNATURE_KEY', ''),
    'timeout' => env('LARTRIX_MODULE_MARKET_TIMEOUT', 30),
    'cache_ttl' => env('LARTRIX_MODULE_MARKET_CACHE_TTL', 3600),
],
```

### 多语言

[](#多语言)

Lartrix 与 Thinkrix 对前端提供相同的语言配置结构，以及 `/translations`、`/locale` 接口。Laravel 版内部使用 Laravel Translator 和 Nwidart 模块语言 namespace。

增加语言时，在 `config/lartrix.php` 声明：

```
'languages' => [
    'zh-CN' => ['label' => '中文', 'file' => 'zh-CN', 'naive_locale' => 'zh-CN'],
    'en-US' => ['label' => 'English', 'file' => 'en-US', 'naive_locale' => 'en-US'],
    'ja-JP' => ['label' => '日本語', 'file' => 'ja-JP', 'naive_locale' => 'en-US'],
],
```

项目覆盖或新增的完整界面语言包放在 `lang/vendor/lartrix/ja-JP.php`。前端会动态加载，无需增加 Trix 语言模块或重新构建前端。

Nwidart 模块继续使用原生目录和 namespace，例如：

```
Modules/Blog/Resources/lang/ja-JP/messages.php

```

模块 PHP 中使用 `__('blog::messages.title')`。Lartrix 的前端翻译目录会同时暴露为 `blog.messages.title`。通过 Nwidart 发布到 `resources/lang/modules/blog` 的项目覆盖优先级更高。旧版模块的 `Resources/lang/ja-JP.php` 汇总文件仍受兼容支持。

开发指南
----

[](#开发指南)

### 模块化开发

[](#模块化开发)

推荐使用 `nwidart/laravel-modules` 进行模块化开发：

```
php artisan module:make Blog
```

需要参与 Trix 市场、发布或项目组合的模块，使用同一个 `module.json`：Nwidart 拥有根字段，Trix 生态元数据严格放在 `trix` 子节点。旧的扁平 Trix 字段不再兼容。

```
{
  "name": "Blog",
  "alias": "blog",
  "priority": 0,
  "providers": ["Modules\\Blog\\Providers\\BlogServiceProvider"],
  "files": [],
  "trix": {
    "schema_version": "trix.module.v1",
    "id": "official.blog",
    "version": "1.0.0",
    "title": "博客",
    "description": "博客模块",
    "author": "Trix 官方",
    "adapter": {
      "language": "php",
      "language_version": "^8.2",
      "framework": "laravel",
      "framework_version": "^12.0",
      "package_type": "nwidart"
    }
  }
}
```

项目安装完成后，运行时配置只写入 `config/trix-project.php`；项目配置、模块版本和覆盖配置、契约绑定及安装后引导均从 Laravel 配置仓库读取，不生成并行的派生 JSON。

### 控制器开发

[](#控制器开发)

继承 `CrudController` 快速实现 CRUD：

```
