A lightweight Laravel package for user-driven database searching with fuzzy matching and multiple search drivers.
Laravel Searchy is a Laravel package that enables user-driven database searching with fuzzy matching and multiple search algorithms. It allows developers to easily implement search functionality across model fields without requiring external search services. The package provides configurable drivers and matchers to weight search results based on relevance.
Laravel developers building applications with MySQL databases who need simple, integrated search functionality without external dependencies like Elasticsearch or Algolia.
It offers a lightweight, self-contained solution that can be set up in minutes, with flexible search drivers and matchers for customizing relevance scoring. Unlike heavier search engines, it requires no additional server software.
Unmaintained: Laravel Searchy makes user driven searching easy with fuzzy search, basic string matching and more to come!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Requires no external search engines or server software; installation is via Composer with Laravel service provider integration, enabling search functionality in minutes.
Offers multiple drivers (simple, fuzzy, levenshtein) and customizable matchers like ExactMatcher and AcronymMatcher, allowing fine-tuned relevance scoring for different use cases.
Search results can be hydrated into Laravel Eloquent models using the hydrate() method, ensuring compatibility with Laravel's ORM and existing model logic.
Allows searching across joined columns, such as first_name::last_name, with a double colon syntax, simplifying queries for combined data without manual concatenation.
Explicitly marked as unmaintained in the README, with no updates, bug fixes, or security patches, making it risky for production use and lacking future support.
Relies solely on MySQL queries without external search indexing, leading to slower performance and potential bottlenecks as dataset size or search complexity increases.
The FuzzySearchUnicodeDriver lacks input sanitization, exposing applications to SQL injection attacks if strings are not manually sanitized, as warned in the documentation.
Designed exclusively for MySQL databases, it cannot be used with other Laravel-supported databases like PostgreSQL or SQLite, limiting its applicability in diverse environments.