Laravel Scout

Laravel Scout

A simple, driver-based solution for adding full-text search capabilities to your Eloquent models

INSTALLATION
$composer require laravel/scout

Laravel Scout is a package that provides a simple, driver-based solution for adding full-text search capabilities to your Eloquent models in Laravel applications. By utilizing model observers, Scout automatically synchronizes your model data with your search indexes, ensuring that your search results are always up-to-date.

What is Laravel Scout? #

Laravel Scout is Laravel's full-text search system that provides:

  • Model searching
  • Multiple search engine support
  • Automatic synchronization
  • Simple API

Key Features #

Full-Text Search: Add powerful search capabilities to your models ✅ Multiple Search Engines: Algolia, MeiliSearch, Elasticsearch, TNTSearch ✅ Automatic Synchronization: Automatic data sync with search indexes ✅ Simple API: Easy-to-use API for model searching

Key Features

1

Full-Text Search

Add powerful search capabilities to your Eloquent models

2

Multiple Search Engines

Supports Algolia, MeiliSearch, Elasticsearch, TNTSearch and more

3

Automatic Synchronization

Automatic data synchronization with search indexes using model observers

4

Simple API

Easy-to-use API for searching models

Installation

1

Install the package

CODE
composer require laravel/scout
2

Publish configuration file

CODE
php artisan vendor:publish --provider="Laravel\Scout\ScoutServiceProvider"
3

Add trait to model

CODE
use Laravel\Scout\Searchable;

class Post extends Model
{
    use Searchable;
}

Usage

1

Search models

Search in Post model

CODE
$posts = Post::search('Laravel')->get();
2

Search with conditions

Search with additional conditions

CODE
$posts = Post::search('Laravel')
    ->where('status', 'published')
    ->get();

Security Notes

Ensure API keys for search engines are properly secured.

Use separate indexes for sensitive data.

Monitor API usage to avoid exceeding limits.

Alternatives

Laravel Full-Text Search (Native)

Elasticsearch

Algolia