Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Model Search Kit Laravel Package

beid212/model-search-kit

Laravel-пакет для выноса логики поиска: фильтрации и сортировки моделей в отдельные классы. Упрощает поддержку запросов и повторное использование фильтров. Установка через Composer, публикация конфигов через vendor:publish.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Search & Filtering UX: Enables rapid implementation of advanced sorting/filtering for APIs or admin dashboards, reducing dev time for common CRUD operations.
  • API Consistency: Standardizes query parameters (e.g., ?sort=created_at:desc&filter[status]=active) across microservices or monoliths, improving developer onboarding.
  • Roadmap Acceleration: Justifies prioritizing search/filter features over building custom solutions, especially for MVP or iterative releases.
  • Build vs. Buy: Avoids reinventing wheel for basic filtering/sorting logic (e.g., Eloquent query builder extensions), but may require customization for complex use cases.
  • Use Cases:
    • Admin panels (e.g., user/transaction management).
    • Public APIs with dynamic data exploration (e.g., e-commerce product listings).
    • Legacy systems needing modern search UX without full rewrite.

When to Consider This Package

  • Adopt if:

    • Your team needs reusable, maintainable filtering/sorting logic across multiple endpoints.
    • You’re using Laravel/Eloquent and want to avoid manual query parameter parsing.
    • Your search requirements are standard (e.g., simple field-based filters, basic sorting) and not domain-specific (e.g., full-text search, geospatial queries).
    • You prioritize developer velocity over fine-grained control (e.g., no need for custom filter validators or nested queries).
  • Look elsewhere if:

    • You need advanced search (e.g., Algolia/Elasticsearch integration, fuzzy matching).
    • Your data model is highly complex (e.g., polymorphic relationships requiring custom logic).
    • The package’s lack of adoption (0 stars) raises concerns about long-term maintenance or community support.
    • You’re building a public SDK where query parameter standards must align with existing tools (e.g., GraphQL, REST conventions).

How to Pitch It (Stakeholders)

For Executives: "This package lets us ship search/filter functionality in days instead of weeks—critical for [Admin Dashboard/API Roadmap]. It standardizes how teams build queries, reducing bugs and tech debt. Low risk: minimal customization needed for 80% of use cases, and we can extend it later if required."

For Engineering: "A lightweight Laravel package to handle sort/filter query params (e.g., ?filter[status]=active&sort=-created_at). Saves ~30% dev time vs. manual Eloquent query building. Tradeoff: limited flexibility for edge cases, but we can wrap it or extend it. Let’s prototype it for [Feature X] and measure impact."

For Developers: *"No more writing repetitive if statements for query params. This gives us a clean Filter/Sort class to chain conditions like:

$results = Model::search()
    ->filter(['status' => 'active', 'role' => 'admin'])
    ->sort(['name:asc', 'created_at:desc'])
    ->get();

Perfect for [Use Case Y]—let’s test it against our current implementation."*

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
emuniq/filament-browser-notifications
syriable/filament-translator
hungnm28/livewire-form
wenprise/eloquent
crudly/encrypted
fadion/bouncy
cuci/prototurk-sdk
gos/pubsub-router-bundle
cuci/prototurk-sdk-symfony
clementtalleu/easyadmin-markdown-bundle
codeflextech/permission-manager
karnoweb/livewire-datepicker
sayedenam/sayed-dashboard
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui