PHPackages                             ogini/oginisearch-laravel-scout - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. ogini/oginisearch-laravel-scout

ActiveLibrary[Search &amp; Filtering](/categories/search)

ogini/oginisearch-laravel-scout
===============================

OginiSearch Laravel Scout driver with PHP client - High-performance search engine integration

1.1.7(3mo ago)062MITPHPPHP ^8.2CI failing

Since Jun 9Pushed 3mo agoCompare

[ Source](https://github.com/ogini-search/oginisearch-laravel-scout)[ Packagist](https://packagist.org/packages/ogini/oginisearch-laravel-scout)[ Docs](https://github.com/ogini-search/oginisearch-laravel-scout)[ RSS](/packages/ogini-oginisearch-laravel-scout/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (12)Versions (19)Used By (0)

OginiSearch Laravel Scout Driver
================================

[](#oginisearch-laravel-scout-driver)

A comprehensive Laravel Scout driver for OginiSearch, providing full-text search capabilities with advanced features and performance optimizations.

Features
--------

[](#features)

- Full Laravel Scout integration
- Advanced search capabilities
- Performance optimization with caching and connection pooling
- Asynchronous operations support
- Event-driven architecture
- Comprehensive error handling
- Query optimization and caching
- Synonym and stopword management
- Real-time search suggestions and autocomplete

Requirements
------------

[](#requirements)

- PHP &gt;= 8.2
- Laravel &gt;= 12.0
- Laravel Scout &gt;= 10.0

Installation
------------

[](#installation)

1. Install the package via Composer:

```
composer require ogini/oginisearch-laravel-scout
```

2. Publish the configuration file:

```
php artisan vendor:publish --tag=ogini-config
```

3. Set up your OginiSearch configuration in `config/ogini.php` or via environment variables:

```
OGINI_BASE_URL=http://localhost:3000
OGINI_API_KEY=your-api-key-here
```

Configuration
-------------

[](#configuration)

The package provides extensive configuration options in `config/ogini.php`:

```
return [
    'base_url' => env('OGINI_BASE_URL', 'http://localhost:3000'),
    'api_key' => env('OGINI_API_KEY'),

    'client' => [
        'timeout' => 30,
        'retry_attempts' => 3,
        'retry_delay' => env('OGINI_BATCH_RETRY_DELAY', 100),
    ],

    'engine' => [
        'max_results' => 1000,
        'default_limit' => 15,
    ],

    'performance' => [
        'query_optimization' => [
            'enabled' => true,
            'min_term_length' => env('OGINI_MIN_TERM_LENGTH', 3),
            'max_complexity_score' => env('OGINI_MAX_COMPLEXITY_SCORE', 15),
            'performance_check_threshold' => env('OGINI_PERFORMANCE_CHECK_THRESHOLD', 100),
            'wildcard_penalty' => env('OGINI_WILDCARD_PENALTY', 5),
            'phrase_boost' => env('OGINI_PHRASE_BOOST', 1.5),
            'exact_match_boost' => env('OGINI_EXACT_MATCH_BOOST', 2.0),
            'fuzzy_match_boost' => env('OGINI_FUZZY_MATCH_BOOST', 1.0),
        ],
        'cache' => [
            'enabled' => true,
            'driver' => 'redis',
            'query_ttl' => 300,
            'result_ttl' => 1800,
            'suggestion_ttl' => 600,
        ],
        'connection_pool' => [
            'enabled' => true,
            'pool_size' => 5,
            'connection_timeout' => 5,
            'idle_timeout' => 30,
        ],
        'batch_processing' => [
            'enabled' => true,
            'batch_size' => 100,
            'max_retry_attempts' => 3,
            'retry_delay' => env('OGINI_BATCH_RETRY_DELAY', 100),
        ],
    ],
];
```

Basic Usage
-----------

[](#basic-usage)

### Model Configuration

[](#model-configuration)

Configure your Eloquent models to use OginiSearch:

```
