dskripchenko/orchid-extra
Extra Classes For Orchid.
3,789
1
| Install | |
|---|---|
composer require dskripchenko/orchid-extra |
|
| Latest Version: | v2.2.2 |
| PHP: | ^8.2 |
| License: | MIT |
| Last Updated: | Sep 14, 2026 |
| Links: | GitHub · Packagist |
Maintainer: dskripchenko
orchid-extra
Extra building blocks for the Orchid admin platform — an inline filter factory and base Screen / Layout classes that cut boilerplate.
Requirements
PHP 8.2–8.5 · Laravel 11 / 12 / 13 · Orchid Platform 14.
Install
composer require dskripchenko/orchid-extra
Selection — inline filters
Instead of writing a Filter class per column, build filters inline through the
Selection facade:
use Dskripchenko\OrchidExtra\Facades\Selection;
public function filters(): iterable
{
return [
Selection::input('Name', 'name'),
Selection::date('Created', 'created_at'),
Selection::switcher('Active', 'is_active'),
Selection::selectFromModel('Author', 'author_id', new User),
Selection::selectFromQuery('Category', 'category_id', Category::query()->where('active', true)),
Selection::selectFromOptions('Status', 'status', ['draft' => 'Draft', 'published' => 'Published']),
];
}
| method | purpose |
|---|---|
input($name, $field, $operator = 'like') |
text filter |
date($name, $field, $format = 'Y-m-d', $range = true) |
date / date-range |
switcher($name, $field) |
boolean toggle |
selectFromModel($name, $field, Model $entity, $entityName = 'name', $entityKey = 'id') |
select from a model |
selectFromQuery($name, $field, Builder $query, …) |
select from a query |
selectFromOptions($name, $field, array $options) |
select from a static list |
Each is also available as a Filters\Base*Filter class if you prefer subclassing.
Base classes
Extend these to stand up list / edit screens with less setup:
Screens\BaseListScreen,Screens\BaseEditScreen,Screens\ScreenLayouts\BaseListLayout
License
MIT © Denis Skripchenko
Related Packages
orchid/platform
Platform for back-office applications, admin panel or CMS your Laravel app.
2,610,289
4,797