refinephp / laravel-refine
A Laravel package for elegant and efficient query filtering and sorting.
v1.0.0
2025-05-16 16:47 UTC
Requires
- php: ^8.0
- laravel/framework: ^11.0|^10.0|^9.0|^8.0|^12.0
Requires (Dev)
- orchestra/testbench: ^9.0|^8.0|^10.0
- phpunit/phpunit: ^10.0|^11.5.3
This package is not auto-updated.
Last update: 2025-08-23 17:30:19 UTC
README
Laravel Refine is a package that provides elegant and efficient query filtering and sorting for Laravel applications.
Installation
You can install the package via Composer:
composer require refinephp/laravel-refine
php artisan vendor:publish --tag=laravel-refine
Basic Usage
Filtering
To add filtering capabilities to your model, you can simply use the Filterable
trait in your model:
use Refinephp\LaravelRefine\Traits\Filterable; class User extends Model { use Filterable; }
Following that, you can use the filter
method to filter your query results in your controller:
use App\Models\User; class UserController extends Controller { public function index() { return User::filter()->get(); } }
From your request, you can pass the filter parameters as query string parameters. For example:
GET /users?filters[name][$eq]=John&filters[age][$eq]=30