PHPackages                             liangguifeng/hyperf-scout-meilisearch - 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. liangguifeng/hyperf-scout-meilisearch

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

liangguifeng/hyperf-scout-meilisearch
=====================================

Hyperf MeiliSearch Scout provides a driver based solution to searching your Eloquent models. Inspired By Laravel Scout.

v1.0.4(7mo ago)111MITPHPPHP &gt;=8.1

Since Aug 16Pushed 7mo agoCompare

[ Source](https://github.com/liangguifeng/hyperf-scout-meilisearch)[ Packagist](https://packagist.org/packages/liangguifeng/hyperf-scout-meilisearch)[ RSS](/packages/liangguifeng-hyperf-scout-meilisearch/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (4)Versions (6)Used By (0)

English | [中文](./README-CN.md)

\[TOC\]

Introduction
============

[](#introduction)

This extension package provides a Meilisearch integration for the Hyperf framework similar to Laravel Scout. It supports document indexing, searching, batch updates, and batch synchronization of index settings.

- Supports custom index names
- Supports batch add/update/delete documents
- Supports batch synchronization of index settings

Requirements
============

[](#requirements)

- PHP &gt;= 8.1
- Hyperf &gt;= 3.1

Installation
============

[](#installation)

```
composer require liangguifeng/hyperf-scout-meilisearch
```

Configuration
=============

[](#configuration)

Add configuration in `config/autoload/scout.php`:
-------------------------------------------------

[](#add-configuration-in-configautoloadscoutphp)

```
use Hyperf\Scout\Provider\MeilisearchProvider;

return [
    'default' => env('SCOUT_ENGINE', 'meilisearch'),
    'chunk' => [
        'searchable' => 500,
        'unsearchable' => 500,
    ],
    'prefix' => env('SCOUT_PREFIX', ''),
    'soft_delete' => false,
    'concurrency' => 100,
    'engine' => [
        'elasticsearch' => [
            'driver' => ElasticsearchProvider::class,
            'index' => null,
            'hosts' => [
                env('ELASTICSEARCH_HOST', 'http://127.0.0.1:9200'),
            ],
        ],
        'meilisearch' => [
            'driver' => MeilisearchProvider::class,
            'host' => env('MEILISEARCH_HOST', 'http://127.0.0.1:7700'), // Your Meilisearch address
            'key' => env('MEILISEARCH_KEY', null), // Your Meilisearch key
            'index-settings' => [
                Article::class => [
                    'filterableAttributes' => ['id', 'type', 'created_at'], // Filterable fields (customizable)
                    'sortableAttributes' => ['id', 'sort', 'created_at'],   // Sortable fields (customizable)
//                    'searchableAttributes' => [], // Searchable fields (all fields by default, configure if needed)
                ],
            ]
        ],
    ],
];
```

Add to `.env`
-------------

[](#add-to-env)

```
SCOUT_ENGINE=meilisearch
MEILISEARCH_HOST=http://127.0.0.1:7700
MEILISEARCH_KEY=xxxxxxxxxxxxxxxxx
```

Add `Scout` configuration in `Model`
------------------------------------

[](#add-scout-configuration-in-model)

```
