Receber por email
← Voltar para o catálogo

laravel-scout

Implement full-text search with Laravel Scout. Use when adding search to Eloquent models with Meilisearch, Algolia, or database driver.

15estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add fusengine/agents

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/laravel-scout/svg)](https://www.skillteca.com.br/skills/laravel-scout)

Skills relacionadas

Ver todas de Dados e Análise →

Alerta por categoria

Receba novas skills de Dados e Análise toda segunda

1 email curto, só com as skills novas de Dados e Análise. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Laravel Scout

Agent Workflow (MANDATORY)

Before ANY implementation, use TeamCreate to spawn 3 agents:

  1. fuse-ai-pilot:explore-codebase - Analyze existing model and search patterns
  2. fuse-ai-pilot:research-expert - Verify Scout docs via Context7
  3. mcp__context7__query-docs - Check search and indexing patterns

After implementation, run fuse-ai-pilot:sniper for validation.

Overview

| Component | Purpose | |-----------|---------| | Searchable Trait | Makes Eloquent models searchable | | Search Drivers | Meilisearch, Algolia, database, collection | | Indexing | Automatic sync on model changes | | Search Builder | Fluent search API with filters |

Decision Guide: Search Driver

Which driver?
├── Production (recommended) → Meilisearch (fast, self-hosted, free)
├── Managed service → Algolia (hosted, pay per search)
├── Small dataset → database (no extra infra)
└── Testing → collection (in-memory, no engine)

Quick Setup

composer require laravel/scout
composer require meilisearch/meilisearch-php http-interop/http-factory-guzzle
SCOUT_DRIVER=meilisearch
MEILISEARCH_HOST=http://127.0.0.1:7700
MEILISEARCH_KEY=masterKey
$results = Article::search('laravel tutorial')->paginate(15);

Critical Rules

  1. Use toSearchableArray() to control indexed data
  2. Queue indexing with SCOUT_QUEUE=true for performance
  3. Use searchable() for bulk import after setup
  4. Pause indexing during seeders with Scout::withoutSyncing()

Reference Guide

| Need | Reference | |------|-----------| | Searchable trait, indexing, conditions | [searchable.md](references/searchable.md) | | Driver setup, Meilisearch, Algolia | [drivers.md](references/drivers.md) |

Best Practices

DO

  • Use Meilisearch for production (fast, typo-tolerant)
  • Queue indexing operations (SCOUT_QUEUE=true)
  • Limit indexed fields with toSearchableArray()

DON'T

  • Index sensitive data (passwords, tokens)
  • Forget to import existing records after setup
  • Use collection driver in production

Laravel 13 Notes

Vector search natif pgvector

Pour la recherche sémantique (embeddings) sur PostgreSQL, Laravel 13 expose Schema::ensureVectorExtensionExists() et whereVectorSimilarTo() via la skill dédiée [[laravel-vector-search]]. Scout reste pertinent pour le full-text (Meilisearch/Algolia) ; pour la similarité vectorielle, utiliser pgvector directement sans driver Scout.

// Hybride : Scout pour full-text, pgvector pour similarité
$keyword = Post::search($query)->get();
$semantic = Post::whereVectorSimilarTo('embedding', $embedding, limit: 10)->get();
Compartilhar X LinkedIn