这个项目能做什么
Filament Page Builder 是一个 Laravel 包,为 Filament 管理面板添加可视化画布编辑器。它将页面内容以有序的类型化区块数组存储在单个 JSON 列中,画布和 Filament 原生 Builder 表单读写同一份数据。
主要功能包括:
- 可通过 /{record}/design 访问的全屏画布编辑器,支持将区块拖放到分区和列中
- 在画布上直接进行内联纯文本编辑,声明的可编辑字段在公开页面上渲染为纯标记
- 使用设计令牌(内边距、宽度、背景、对齐)而非原始 CSS 的样式检查器
- 撤销/重做、幽灵恢复,以及将数据库写入推迟到显式保存的乐观保存锁
- 文档大纲,以及移动端响应式单面板编辑器
设计原则强调该包提供机制,而应用拥有内容。它不附带 Page 模型或迁移。区块是应用中定义的类,可自由查询模型并渲染自定义标记。单一注册表在表单、画布和公开渲染器之间解析区块,确保一致性。未知区块类型会被跳过而非导致致命错误,因此内容可在架构变更后存续。
该包附带可直接使用的画布资源,注册在其自己的命名空间下,因此使用者无需运行打包工具或安装 Node。内置区块类型包括 Section、text、image、button、embed、spacer 和 divider,应用可注册自己的区块(例如 Hero、RichText)。
主题支持跟随面板的浅色/深色模式,并提供四个 CSS 变量用于界面外观定制。画布可指向自定义样式视图,以匹配公开站点的设计令牌。区块样式表必须在公开站点上提供,才能正确渲染。
该包支持 Filament 4.12.6+ 和 5.x(来自 main 分支的 v0.4.x)以及 Filament 3.3.53+(来自 filament-3 分支的 v0.3.x)。需要 PHP 8.3+。翻译提供英语、阿塞拜疆语、法语、德语、俄语、西班牙语和土耳其语。采用 MIT 许可证。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。