Repository navigation
Releases
Releases · awcodes/panelist
v1.0.0
Panelist 1.0
The first release of Panelist: a master-detail editor for Filament 4 and 5 resources, in the style of Gmail, Notion or Linear.
The layout
- Master-detail editing: a resource's table becomes a searchable list on the left, and the selected record opens in the resource's own form on the right. Your existing
form()andtable()definitions work unchanged. - Bookmarkable records: the open record is kept in the query string (
?record=123), so links open the same record. - Resizable panels: drag the divider to resize the list. The width is remembered in the browser.
- Keyboard navigation: move through the list with
j/kor the arrow keys, open withEnter, create withc, save withCmd/Ctrl + Sand close withEscape.
Getting started
make:panelist-page: generates a page for a resource. Register it as the resource'sindexpage and you're done.- Configuration: the sidebar width and keyboard shortcuts, globally or per panel.
Built on Filament's rules
- Authorization and scoping: the editor checks
canCreate(),canEdit()andcanDelete(), and only loads records from the resource'sgetEloquentQuery(), so tenancy and other scoping apply. - Relationships and transactions: relationship fields save on create and update, and saves use the panel's database transactions when enabled.
- Customizable editor: extend
RecordEditorfor the same hooks as Filament's create and edit pages:mutateFormData*,handleRecord*, andbefore/afterlifecycle hooks.
Requirements
- PHP 8.2 or later
- Filament 4.x or 5.x
Add Panelist's stylesheet and views to your Filament theme. See Installation.