rdcstarr / superpower-query
Cache + Meilisearch + DB fallback query layer for Laravel. Fluent SuperPowerQuery + SuperPowerModel trait with auto-derived cache keys, tagged caching, and transparent fallback to Eloquent when Meilisearch is unavailable.
v0.1.1
2026-05-27 11:45 UTC
Requires
- php: ^8.3
- illuminate/cache: ^13.0
- illuminate/contracts: ^13.0
- illuminate/database: ^13.0
- illuminate/pagination: ^13.0
- illuminate/support: ^13.0
- laravel/scout: ^11.0
- meilisearch/meilisearch-php: ^1.0
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- orchestra/testbench: ^11.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-laravel: ^4.1
README
Cache + Meilisearch + DB fallback query layer for Laravel. The SuperPowerQuery fluent builder + SuperPowerModel trait give you tagged caching, auto-derived cache keys, and transparent fallback to Eloquent when Meilisearch is unavailable.
Install
composer require rdcstarr/superpower-query
Requires laravel/scout configured with Meilisearch (SCOUT_DRIVER=meilisearch) and CACHE_STORE=redis.
Usage
use Rdcstarr\SuperpowerQuery\Concerns\SuperPowerModel; class Ticket extends Model { use SuperPowerModel; } // Then: $tickets = Ticket::cache(scope: $user, key: 'tickets:index:list') ->query($search) ->where('user_id', $user->id) ->orderByDesc('last_message_at') ->paginate(30);
Personal toolkit — no support guarantees.