fadion/bouncy
Bouncy maps Elasticsearch search results to Laravel Eloquent models, letting you work with familiar collections while adding indexing and search enhancements. Supports manual or automatic indexing on create/update/delete, plus mappings, pagination, highlights, and client access.
Adopt if:
l5 branch) and need a lightweight, Eloquent-compatible Elasticsearch integration.Look elsewhere if:
For Executives:
"Bouncy lets us ship search functionality in weeks instead of months by leveraging Elasticsearch without the complexity. It’s like Eloquent for search—our backend team can query models with familiar syntax (e.g., Post::search('laravel')->get()), while keeping data in sync automatically. This is a low-risk way to add search to [Product X] without hiring Elasticsearch experts or building custom integrations. The trade-off? We’ll need to monitor performance as the dataset grows, but for our MVP, it’s a no-brainer."
For Engineering: *"Bouncy is a lightweight, Laravel-native wrapper for Elasticsearch that maps results to Eloquent models. Key benefits:
where(), orderBy(), and pagination as usual, but with search.For Developers: *"If you’re on Laravel 5 and need Elasticsearch but hate writing raw queries, Bouncy lets you search models like this:
$results = Post::search('laravel')->paginate(10);
// Returns a collection of Eloquent models, with metadata like highlights.
It handles indexing too—just add use Bouncy\Traits\Bouncy; to your model. No need to manually sync Elasticsearch. But: It’s abandoned, so test thoroughly and be ready to fork if you hit limits."*
How can I help you explore Laravel packages today?