PHPackages                             innoboxrr/search-surge - 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. innoboxrr/search-surge

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

innoboxrr/search-surge
======================

2.0.6(1y ago)05271MITPHPCI failing

Since Feb 14Pushed 8mo ago1 watchersCompare

[ Source](https://github.com/innoboxrr/search-surge)[ Packagist](https://packagist.org/packages/innoboxrr/search-surge)[ RSS](/packages/innoboxrr-search-surge/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (14)Used By (1)

Innoboxrr SearchSurge para Laravel
==================================

[](#innoboxrr-searchsurge-para-laravel)

SearchSurge es un paquete que proporciona una forma elegante y flexible de filtrar y buscar datos en tu aplicación Laravel. Utiliza una clase de construcción para permitir consultas complejas con facilidad.

Instalación
-----------

[](#instalación)

Puedes instalar el paquete a través de composer:

```bash composer require innoboxrr/search-surge ```

Upgrade
-------

[](#upgrade)

### V1.0 -&gt; V2.0

[](#v10---v20)

- En la versión 2.0 se ha eliminado toda referencia a la instancia de request para pasar los datos, en su lugar se espera que se pase un arreglo con las restricciones.
- Para disminuir la fricción que esto pueda generar básicamente son 2 lugars que se deben cambiar, que es al momento de llamar el método get, donde en ligar de pasar el request debes pasrar un arreglo, que igual puedes declarar con `$request->all()`
- El otro lugar donde debes cambiar esto es en los filtros en el método apply(Builder $builder, array $data)

Posteriormente se puede seguir llamando a $data como un objeto para llamar las propiedades tal como se hacía con request.

Uso
---

[](#uso)

La clase principal de este paquete es `Innoboxrr\SearchSurge\Search\Builder`. Así es como puedes usarla:

### Uso Básico

[](#uso-básico)

Primero, utiliza la clase `Builder` en tu controlador o servicio:

```php use Innoboxrr\\SearchSurge\\Search\\Builder; ```

Luego, puedes crear una nueva instancia del constructor o inyectarlo, y llamar al método `get`, pasando el modelo, los datos y la configuración opcional:

```php $builder = new Builder();

$resultado = $builder-&gt;get(User::class, $data, $options); ```

### Personalización

[](#personalización)

Puedes personalizar varias partes del comportamiento de búsqueda:

- **Ruta de los Filtros**: Establece la ruta del directorio para los filtros.
- **Espacio de Nombres de los Filtros**: Establece el espacio de nombres para los filtros.

Estos se pueden establecer utilizando el array `$options` pasado al método `get`.

### Filtros

[](#filtros)

Puedes crear filtros personalizados dentro del directorio especificado en `filtersPath`. El constructor aplicará automáticamente estos filtros a tu consulta.

Ejemplo
-------

[](#ejemplo)

Supongamos que tienes un modelo de Usuario y quieres filtrar por estado activo y rol. Puedes crear filtros para estos y luego usar el constructor:

```php $data = \[ 'active' =&gt; 1, 'role' =&gt; 'admin', \];

$options = \[ 'filtersPath' =&gt; 'app/Filters', \];

$resultado = $builder-&gt;get(User::class, $data, $options); ```

Contribuciones
--------------

[](#contribuciones)

Por favor, consulta [CONTRIBUTING.md](CONTRIBUTING.md) para más detalles.

Seguridad
---------

[](#seguridad)

Si descubres algún problema relacionado con la seguridad, por favor envía un correo electrónico al desarrollador en lugar de utilizar el rastreador de problemas.

Licencia
--------

[](#licencia)

La Licencia MIT (MIT). Por favor, consulta [Archivo de Licencia](LICENSE.md) para más información.

Soporte
-------

[](#soporte)

Para soporte general y preguntas, por favor utiliza la [sección de problemas](https://github.com/innoboxrr/search-surge/issues) en GitHub.

Donaciones
----------

[](#donaciones)

Si este paquete te ha sido útil y te gustaría apoyar el desarrollo continuo, considera hacer una donación en [este enlace](https://donate.stripe.com/9AQ8yZc4x3DifCw9AC).

¡Feliz búsqueda! 🚀

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance53

Moderate activity, may be stable

Popularity13

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~67 days

Recently: every ~133 days

Total

12

Last Release

445d ago

Major Versions

1.0.4 → 2.0.02023-08-18

### Community

Maintainers

![](https://www.gravatar.com/avatar/1326cc571921fa88e3800b030b9ab07ad5dc7638c3bec1ad2e668e54743c5aec?d=identicon)[hrauvc](/maintainers/hrauvc)

---

Top Contributors

[![hrauvc](https://avatars.githubusercontent.com/u/12868727?v=4)](https://github.com/hrauvc "hrauvc (26 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/innoboxrr-search-surge/health.svg)

```
[![Health](https://phpackages.com/badges/innoboxrr-search-surge/health.svg)](https://phpackages.com/packages/innoboxrr-search-surge)
```

###  Alternatives

[ruflin/elastica

Elasticsearch Client

2.3k50.4M203](/packages/ruflin-elastica)[opensearch-project/opensearch-php

PHP Client for OpenSearch

15024.3M65](/packages/opensearch-project-opensearch-php)[mailerlite/laravel-elasticsearch

An easy way to use the official PHP ElasticSearch client in your Laravel applications.

934529.3k2](/packages/mailerlite-laravel-elasticsearch)[massive/search-bundle

Massive Search Bundle

721.4M13](/packages/massive-search-bundle)[outl1ne/nova-multiselect-filter

Multiselect filter for Laravel Nova.

45802.7k3](/packages/outl1ne-nova-multiselect-filter)[handcraftedinthealps/zendsearch

a general purpose text search engine written entirely in PHP 5

39921.0k35](/packages/handcraftedinthealps-zendsearch)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
