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

Livewiremesh Laravel Package

ethanbarlo/livewiremesh

LivewireMesh integrates React components directly into Laravel Livewire using Livewire hooks (no Alpine intermediary). Get reactive props, two-way binding via useEntangle (live or deferred), and direct access to Livewire methods/properties with useWire.

View on GitHub
Deep Wiki
Context7
v0.6.1

Fixed

  • Mesh components rendered mid-page-life (e.g. inside a Livewire-toggled modal) now mount reliably on the first render instead of racing the asset loader. The wrapper view now emits a data-mesh-asset URL and the client dynamically imports it when the component isn't already registered; the previous polling retry loop is removed.
  • MeshComponent::getMeshViewPath() now refreshes its per-class cached view when the package view is newer, so package view updates propagate without requiring consumers to manually clear storage/framework/views/mesh-*.blade.php.

Deprecated

  • maxRenderAttempts and renderDelay on initLivewireMesh config are unused (dynamic asset loading replaced the retry loop). They remain accepted for backward compatibility and will be removed in a future version.
v0.6.0

What's Changed

Added livewire 4 support

Full Changelog: https://github.com/EthanBarlo/LivewireMesh/compare/v0.5.7...v0.6.0

v0.5.7

Added a new useErrorBag hook. Which makes the error bag from laravel validation available for use.

const $wire = useWire();
const [userName, setUserName] = useEntangle<string>('user_name');
const errors = useErrorBag();

useEffect(() => {
    console.log({
        errors
    })
}, [errors]);


return <> 
{/* ....... */}
<TextInput value={userName} onChange={setUserName} hasErrors={errors['user_name'] !== null}/>
<ErrorMessage error={errors['user_name']}/>

<Button onClick={() => $wire.save()}>Save</Button>
</>

Multiple errors can be returned, So we also have a provided type, that can be used to help with the ErrorMessage component

import { ErrorBagItem } from '[@livewiremesh](https://github.com/livewiremesh)/react/hooks/useErrorBag';

interface IError extends React.HTMLProps<HTMLParagraphElement> {
    error?: ErrorBagItem;
}
const Error: React.FC<IError> = ({ message, error, className, ...props }) => {
    if (!error) return null;
    return (
        <p className={cn('text-red-500 error', className)} {...props}>
            {error &&
                error.map((item) => (
                    <span key={item} className="block">
                        {item}
                    </span>
                ))}
        </p>
    );
};

export default Error;
v0.5.6

Updated useEntangle hook to accept generics for the data type.

const [count, setCount] = useEntangle<number>('count')
v0.5.4

Added Laravel 12 compatability

v0.5.3

What's Changed

New Contributors

Full Changelog: https://github.com/EthanBarlo/LivewireMesh/compare/v0.5.2...v0.5.3

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.
croct/coding-standard
croct/plug-php
nqxcode/phpmorphy
boundwize/pyrameter
develia/commons
dmstr/symfony-system-resources-bundle
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
renatomarinho/laravel-page-speed
develia/geo-bundle
austinheap/laravel-database-encryption
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
imbo/imbo-coding-standard
visualbuilder/filament-lottie
servicioslineaonce/starter-kit
atomcoder/laravel-reorderable
irajul/filament-shadcn-theme
agtp/agtp-php