Laravel Scout is a simple layer that syncs Eloquent models with a search engine. LIKE queries are slow on large tables and do not rank results; Scout gives fast, ranked search through Post::search('...').
How it works
When a model is saved an observer sends it to the index. On search the engine returns matching IDs and Scout loads the models with WHERE id IN (...).
Installation and driver choice
composer require laravel/scout
php artisan vendor:publish --provider="Laravel\Scout\ScoutServiceProvider"
# Meilisearch driver
composer require meilisearch/meilisearch-php http-interop/http-factory-guzzle
docker run -d -p 7700:7700 -e MEILI_MASTER_KEY=masterKey getmeili/meilisearch:v1SCOUT_DRIVER=database
SCOUT_QUEUE=true
# for Meilisearch
# SCOUT_DRIVER=meilisearch
# MEILISEARCH_HOST=http://127.0.0.1:7700
# MEILISEARCH_KEY=masterKey