liberusoftware / module-cms-widgets
Widget system for Liberu CMS: a registry of area-scoped widgets (sidebar, dashboard, footer) with ordered rendering.
Package info
github.com/liberusoftware/module-cms-widgets
Type:liberu-module
pkg:composer/liberusoftware/module-cms-widgets
Requires
- php: ^8.5
- filament/filament: ^5.11.0
- illuminate/support: ^13.38.0
- liberusoftware/module-cms-contracts: ^0.1
- liberusoftware/module-cms-core: ^0.1
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-11-14 19:55:41 UTC
README
Repository
Source, issues, and release history: https://github.com/liberusoftware/module-cms-widgets
Composer package: https://packagist.org/packages/liberusoftware/module-cms-widgets
The widget system for Liberu CMS: register widgets and render them by area (sidebar, dashboard, footer).
Model
A widget implements WidgetInterface — key, title, area (a WidgetArea
enum), order, and render() (returns HTML). The WidgetRegistry collects
them; forArea() returns an area's widgets ordered ascending, and
renderArea() concatenates their HTML.
$registry = app(\Liberu\Cms\Widgets\WidgetRegistry::class); $registry->register(new SocialLinksWidget(['GitHub' => 'https://github.com/...'])); $html = $registry->renderArea(\Liberu\Cms\Contracts\Widget\WidgetArea::Footer);
Prebuilt widgets
SearchWidget(sidebar) — a search form.SocialLinksWidget(footer) — escaped social links.
Custom widgets
Implement WidgetInterface and register it. Escape any user-provided output.
Public contracts
WidgetInterface, WidgetArea (in cms-contracts).
Events
- Emits / Listens: none.