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

Searchable Laravel Package

jedrzej/searchable

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Feature Expansion: Accelerates development of search/filter functionality for admin panels, public dashboards, or API endpoints without building custom query logic from scratch.
  • Roadmap Efficiency: Reduces backend development time for MVP releases where search/filter is a core requirement (e.g., SaaS platforms, e-commerce, or data-heavy apps).
  • Build vs. Buy: Justifies buying this lightweight package over building a custom solution for basic search/filter needs, especially if the team lacks Laravel/Eloquent expertise.
  • Use Cases:
    • Admin UIs: Filter records in Laravel Nova/Vue/React admin panels (e.g., "Show only active users with premium=true").
    • Public APIs: Expose searchable endpoints (e.g., /products?query=laptop&category=electronics).
    • Legacy System Modernization: Retrofit search to existing Eloquent models without rewriting queries.
    • Prototyping: Quickly validate search UX before investing in advanced solutions (e.g., Algolia, PostgreSQL full-text).

When to Consider This Package

  • Adopt if:
    • Your search needs are simple (exact matches, basic operators like =, >, <, LIKE).
    • You’re using Laravel Eloquent and want to avoid raw SQL or complex query builders.
    • Your team prioritizes developer velocity over fine-tuned search performance (e.g., no fuzzy matching, no relevance scoring).
    • You need request-param-driven filtering (e.g., ?title=laravel&status=published) without writing boilerplate.
  • Look elsewhere if:
    • You require full-text search, fuzzy matching, or complex aggregations (consider Laravel Scout, Algolia, or PostgreSQL’s tsvector).
    • Your dataset is huge (>100K records) and performance is critical (this package adds overhead via dynamic queries).
    • You need multi-model search (e.g., search across posts and users simultaneously).
    • Your filters involve nested relationships beyond 1–2 levels deep (e.g., user.posts.comments).
    • You’re using Laravel 7+ (package is unmaintained; fork or use alternatives like spatie/laravel-query-builder).
    • Compliance/security requires audit logs for all search queries (package lacks built-in logging).

How to Pitch It (Stakeholders)

For Executives: "This package lets us add search/filter to any database table in Laravel with zero backend dev time—just declare which fields users can search and the system handles the rest. For example, a support team dashboard could filter tickets by status=open&priority=high in seconds. It’s a 10x faster way to build search than custom code, and the MIT license means no vendor lock-in. We’d use it for [X feature], saving [Y dev weeks] and reducing tech debt. Alternatives like Algolia cost $X/month and require migration; this is a low-risk, high-reward stopgap until we scale."

For Engineers: *"This trait adds declarative search/filter to Eloquent models via request params (e.g., ?title=laravel&published_at>2023-01-01). Key benefits:

  • No SQL writing: Automatically builds where clauses for defined fields.
  • Flexible: Supports exact matches, comparisons (>, <), and LIKE (e.g., %query%).
  • Lightweight: ~50 lines of code; easy to extend or fork if needed.
  • Integrates with: Works with Laravel’s query builder, pagination, and APIs out of the box. Tradeoff: Not for high-performance or complex searches—better for MVPs or internal tools. Pair with Withable for eager-loaded relations if needed."*
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