pharaonic/livewire-assistant
A Livewire assistant package for Laravel that helps you add an in-app helper or chat-style assistant to your components with minimal setup. Useful for quick integration, though it is a small package with limited adoption, so review the docs and source before relying on it in production.
get/set/call against a mounted Livewire component from outside Livewire templates), not an Artisan scaffolder despite the repo description. If your roadmap includes third-party widgets (date pickers, rich-text editors, legacy jQuery plugins) or Vue/Alpine islands that must read or drive Livewire state, this is a buy candidate that replaces a small but perpetually fragile in-house adapter.set(path, value, { live: false })) mirror wire:model.defer, batching bridged input into the component's next request instead of one round-trip per keystroke. This is the feature that decides whether bridged high-frequency inputs are viable at all; without it, the package only fits low-frequency widgets.call() resolving with the Livewire method's return value turns the bridge from fire-and-forget into request/response, unlocking validate-before-submit, lookup-style flows, and computed results without inventing a second response channel.livewire-turbolinks adapter, plus data-turbo-eval="false") supports Hotwire adoption without rewriting integration code.unsupported-operation is no longer raised because Livewire 2 performs every bridge operation, narrowing the error surface we have to document and support.Consider it when:
Look elsewhere or defer when:
wire:model.defer, $dispatch, entangle) or framework hooks already cover the use case.unsupported-operation exists — that contract change needs an audit before upgrade, not after.For executives: This gives us a supported, low-cost way to connect third-party JavaScript widgets to Livewire components on the Livewire 2 line, instead of building and maintaining that glue ourselves. It adds deferred state sync (fewer server round-trips, better form UX) and method-return-value calls (richer client flows), and it enforces a Livewire version with a known CVE fix — which helps security and release governance. The honest framing: it is a scoped, time-boxed decision for a Livewire 2 estate, not a platform commitment, and it is a small single-vendor package with no measurable adoption, so we should pilot rather than standardize.
For engineering: 2.0.0 re-targets Livewire 2 using documented hooks and preserves the 1.x integration API, component bridge, attributes, and error codes — so the pilot cost is low and the migration is a platform re-target rather than a rewrite. It adds deferred writes (set(..., { live: false })), call() resolving with return values, and Turbo support next to Turbolinks. Constraints to verify up front: Livewire 2.12.7+ (security minimum), Laravel 7.30–10 with specific PHP ranges, no Livewire 3 path, and Laravel 11/12 or PHP 8.4 unconfirmed. Audit any reliance on unsupported-operation, and note that deferred writes create a client-only state window where get() diverges from server state — optimistic UI must tolerate it. First deliverable from the spike: confirm which Livewire 2 hooks the bridge binds to, and whether Laravel 11+ is genuinely incompatible or merely untested.
How can I help you explore Laravel packages today?