介绍
CatchAdmin 是一款基于 Laravel 和 Element Plus 二次开发而成后台管理系统。Laravel 社区也有许多非常优秀的后台管理系统,例如 Nova, 官方出品,当然是收费的,免费的有基于 Livewire 的 Filament,还有不得不说的 Laravel Admin。它采用前后端分离架构,CatchAdmin 集成了 Token 鉴权、权限管理、动态路由、动态表格、分页封装、资源权限、上传下载、代码生成器支持一键导出导入,数据回收站,附件管理的一款模块化框架。Laravel 框架仅仅作为 Api 输出。将管理系统模块之间的耦合降到了最低限度。每个模块之间都有独立的控制器,路由,模型,数据表。在开发上尽可能将模块之间的影响降到最低,降低了开发上的难度。基于 CatchAdmin 可以开发 CMS,CRM,OA 等 等系统。也封装了很多实用的工具,提升开发体验。
V5.0-beta.1 日志
本次更新亮点
导入导出功能增强
Beta.3 版本对数据导入导出功能进行了核心层面的增强。在实际业务中,批量导入用户、订单、商品等数据是高频需求。此次更新优化了导入导出的底层逻辑,支持更大数据量的处理,并提供了更灵活的字段映射配置。在代码生成器中勾选"支持导入导出",即可为模块自动生成完整的导入导出功能,无需手写 Excel 处理代码。
插件系统正式支持
插件系统是 v5.0 的核心特性之一。CatchAdmin 没有自己发明一套插件机制,而是直接绑定 Composer 生态——任何符合 Laravel Package 规范的 Composer 包都可以作为 CatchAdmin 插件使用。
本次更新增强了插件安装的 Hook 功能,开发者可以在插件安装、卸载时执行自定义逻辑(如初始化配置、创建数据表等)。同时优化了插件安装页面,支持在后台可视化管理插件的启用、禁用与卸载。
这种设计让 CatchAdmin 可以无缝集成第三方服务(支付、短信、OSS 等),也方便将业务逻辑封装成插件在不同项目间复用。
SFC 远程加载性能优化
CatchAdmin 的前端支持"即时渲染",即无需编译即可直接加载 Vue 单文件组件(SFC)。这在开发阶段非常方便,但远程加载会影响首屏渲染速度。
Beta.3 版本优化了 SFC 的加载机制,通过缓存策略和按需加载,显著提升了页面渲染速度。在实际测试中,列表页的首次加载时间缩短了约 30%。
安装体验优化
简化了项目初始化流程,修复了因 Composer 依赖冲突导致的安装失败问题。现在从创建项目到启动后台,整个过程更加流畅,基本不需要手动干预。
此外,左侧菜单现在支持自动更新——安装新模块或插件后,刷新页面即可看到对应的菜单项,无需手动配置路由。
快速开始
composer global -W require catchadmin/installer
# 新建项目
catch new catchadmin
# 安装项目
cd catchadmin && php artisan catch:install
# 启动项目
composer run dev
视频
catchadmin 模块创建
catchadmin 之快速开发
功能
- ☑️** 用户管理 ** 完成用户添加、修改、删除配置,支持不同用户登录后台看到不同的首页
- ☑️** 部门管理 ** 部门组织机构(公司、部门、小组),树结构展现
- ☑️** 岗位管理 ** 可以给用户配置所担任职务
- ☑️** 角色管理 ** 树结构设计,支持角色菜单和按钮权限分配,支持角色数据权限分配、强大的角色管理体系
- ☑️** 菜单管理 ** 配置系统菜单和按钮等
- ☑️** 字典管理 ** 对系统中经常使用并且固定的数据可以重复使用和维护
- ☑️** 系统配置 ** 系统的一些常用设置管理
- ☑️** 操作日志 ** 用户对系统的一些正常操作的查询
- ☑️** 登录日志 ** 用户登录系统的记录查询
- ☑️** 文件上传 ** 支持 `本地`、`七牛云`、`阿里云`、`腾讯云`
- ☑️** 附件管理 ** 管理当前系统上传的文件及图片等信息
- ☑️** 数据表维护 ** 对系统的数据表可以进行清理碎片和优化,并且管理所有数据的回收和销毁
- ☑️** 代码生成 ** 前后端代码的生成(php、vue、 数据库迁移),支持一键生成到模块
- ☑️** 支持 Vue 即时渲染 ** 支持前端 Vue 即时渲染 无需编译
- ☑️** 支持插件系统 ** [CatchAdmin 插件](./plugin/quickstart.md) 即 Composer 包,无需再学一次插件开发,完全绑定 composer 生态
项目地址
![]()
![]()
![]()
![]()
![]()
体验地址
demo 地址
- 账户:
catch@admin.com
- 密码:
catchadmin
感谢🙏
排名不分先后