# livewire/livewire

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/livewire-livewire).**

23,448 stars · 1,721 forks · PHP · mit

## Links

- GitHub: https://github.com/livewire/livewire
- awesome-repositories: https://awesome-repositories.com/repository/livewire-livewire.md

## Description

Livewire is a full-stack framework for PHP that enables the development of reactive, dynamic user interfaces using server-side classes and templates. By bridging the gap between server-side logic and client-side DOM updates, it allows developers to build interactive web applications without writing custom JavaScript. The framework operates as a component-based library, where modular units encapsulate interface logic, state, and event handling directly on the server.

The framework distinguishes itself through a reactive architecture that automatically synchronizes state between the browser and the server. It handles complex tasks like form management, real-time data updates, and page navigation by intercepting browser events and performing surgical DOM updates. This approach ensures that user interactions trigger server-side methods and receive incremental updates, maintaining a seamless experience while keeping the primary application logic within the PHP environment.

Beyond its core reactive capabilities, the framework provides a comprehensive suite of tools for managing the application lifecycle. This includes robust support for component composition, state persistence, file handling, and performance optimization through lazy loading and request bundling. It also incorporates built-in security primitives, such as property validation and integrity verification, to ensure data consistency and protect against unauthorized actions.

The framework is designed for integration into existing PHP projects, offering a command-line interface for scaffolding components and managing project structure. It includes extensive testing utilities for verifying component behavior and rendering, as well as built-in mechanisms for managing loading states and visual feedback during asynchronous operations.

## Tags

### User Interface & Experience

- [Component-Based UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/component-based-ui-frameworks.md) — Provides a component-based library for encapsulating reusable interface logic and templates into modular units that handle events and state on the server.
- [Reactive UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/reactive-ui-frameworks.md) — Builds interactive web interfaces using server-side classes that automatically synchronize state without custom client-side scripts.
- [Form Data Binding](https://awesome-repositories.com/f/user-interface-experience/form-data-binding.md) — Connects component properties directly to input fields to capture user entries and trigger server-side processing. ([source](https://livewire.laravel.com/docs/4.x/forms))
- [Modular UI Components](https://awesome-repositories.com/f/user-interface-experience/modular-ui-components.md) — Enables building complex applications using reusable, nested UI elements that manage their own state and lifecycle.
- [Server-Side Components](https://awesome-repositories.com/f/user-interface-experience/ui-component-libraries/server-side-components.md) — Ships a collection of modular, stateful components that synchronize data between the browser and the server automatically.
- [Server-Side Method Invokers](https://awesome-repositories.com/f/user-interface-experience/action-trigger-components/server-side-method-invokers.md) — Triggers server-side methods from the frontend to update component state or perform database operations without full page reloads. ([source](https://livewire.laravel.com/docs/4.x/actions))
- [Property Validation](https://awesome-repositories.com/f/user-interface-experience/component-property-systems/property-validation.md) — Enforces data integrity by applying validation rules directly to component properties, triggering automatic checks and error feedback. ([source](https://livewire.laravel.com/docs/4.x/attribute-validate))
- [Component Data Binding](https://awesome-repositories.com/f/user-interface-experience/component-utilities/ui-frameworks/component-apis/communication-data-flow/component-data-binding.md) — Synchronizes HTML input values with component properties automatically to ensure the interface reflects the underlying data state. ([source](https://livewire.laravel.com/docs/4.x/properties))
- [Component Event Triggers](https://awesome-repositories.com/f/user-interface-experience/component-event-triggers.md) — Executes server-side methods defined in a component class when a user interacts with a specific element. ([source](https://livewire.laravel.com/docs/4.x/wire-click))
- [Component Property Systems](https://awesome-repositories.com/f/user-interface-experience/component-property-systems.md) — Exposes public data to the frontend and provides memoized computed properties for efficient data retrieval. ([source](https://livewire.laravel.com/docs/4.x/components))
- [Public Property Authorization](https://awesome-repositories.com/f/user-interface-experience/control-properties/public-property-authorization.md) — Validates and authorizes component state variables to ensure that user-modified properties do not bypass business logic or security constraints. ([source](https://livewire.laravel.com/docs/4.x/security))
- [Form Handling](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/form-handling.md) — Intercepts form submissions to trigger server-side methods while preventing default browser behavior and duplicate requests. ([source](https://livewire.laravel.com/docs))
- [HTML Attribute Bindings](https://awesome-repositories.com/f/user-interface-experience/layout-utilities/presentation-engines/template-engines/data-binding-syntax/html-attribute-bindings.md) — Updates HTML element attributes dynamically based on component properties without full page re-renders. ([source](https://livewire.laravel.com/docs/4.x/wire-bind))
- [Form Logic Objects](https://awesome-repositories.com/f/user-interface-experience/presentation-frameworks/lifecycle-state-management/component-lifecycle-management/component-logic-patterns/form-logic-objects.md) — Consolidates validation and persistence logic into reusable objects for consistent form behavior. ([source](https://livewire.laravel.com/docs/4.x/forms))
- [Update Interceptors](https://awesome-repositories.com/f/user-interface-experience/component-property-systems/update-interceptors.md) — Validates and modifies data during property updates to ensure consistency and security. ([source](https://livewire.laravel.com/docs/4.x/lifecycle-hooks))
- [Slot Content Passing](https://awesome-repositories.com/f/user-interface-experience/component-utilities/ui-frameworks/rendering-models/composition-rendering-patterns/component-rendering-patterns/slot-content-passing.md) — Enables passing custom content from parent components into designated slots within child components. ([source](https://livewire.laravel.com/docs/4.x/nesting))
- [Data Binding](https://awesome-repositories.com/f/user-interface-experience/data-binding.md) — Implements custom getter and setter methods to enable direct binding between UI inputs and complex object properties. ([source](https://livewire.laravel.com/docs/4.x/synthesizers))
- [Dynamic Text Formatting](https://awesome-repositories.com/f/user-interface-experience/dynamic-text-formatting.md) — Refreshes text content in response to property changes without requiring full component re-renders. ([source](https://livewire.laravel.com/docs/4.x/wire-text))
- [Computed Property Caching](https://awesome-repositories.com/f/user-interface-experience/ui-architecture/reactivity-systems/computed-property-caching.md) — Stores the result of a method call as a property and reuses that value for the remainder of the request to avoid redundant calculations. ([source](https://livewire.laravel.com/docs/4.x/attribute-computed))
- [Form Input Components](https://awesome-repositories.com/f/user-interface-experience/ui-components/form-input-components.md) — Wraps repetitive form fields into modular templates to ensure a consistent user interface. ([source](https://livewire.laravel.com/docs/4.x/forms))
- [URL State Synchronization](https://awesome-repositories.com/f/user-interface-experience/url-state-synchronization.md) — Maps component properties to URL query parameters to persist application state across page refreshes. ([source](https://livewire.laravel.com/docs/4.x/attribute-url))
- [Element Transitioning Mechanisms](https://awesome-repositories.com/f/user-interface-experience/animation-libraries/element-transitioning-mechanisms.md) — Applies hardware-accelerated transitions to elements as they appear, disappear, or change state. ([source](https://livewire.laravel.com/docs/4.x/wire-transition))
- [Transparent Attribute Forwarding](https://awesome-repositories.com/f/user-interface-experience/component-architectures/component-communication-patterns/component-data-passing/transparent-attribute-forwarding.md) — Automatically forwards HTML attributes from parent components to child elements to maintain styling and accessibility. ([source](https://livewire.laravel.com/docs/4.x/nesting))
- [Parent Accessors](https://awesome-repositories.com/f/user-interface-experience/component-child-utilities/instance-references/parent-accessors.md) — Allows child components to invoke actions or retrieve properties from parent components using reference variables. ([source](https://livewire.laravel.com/docs/4.x/nesting))
- [Request Bundling](https://awesome-repositories.com/f/user-interface-experience/component-initialization/request-bundling.md) — Combines multiple deferred component loads into a single network request to reduce server overhead when initializing many components. ([source](https://livewire.laravel.com/docs/4.x/attribute-lazy))
- [Component Lifecycle Hooks](https://awesome-repositories.com/f/user-interface-experience/component-lifecycle-hooks.md) — Allows traits and objects to define lifecycle hooks using prefixed methods to prevent naming conflicts. ([source](https://livewire.laravel.com/docs/4.x/lifecycle-hooks))
- [Component Registration Systems](https://awesome-repositories.com/f/user-interface-experience/component-registration-systems.md) — Provides automated discovery and registration of UI components to simplify application structure and package development. ([source](https://livewire.laravel.com/docs/4.x/components))
- [Component Communication](https://awesome-repositories.com/f/user-interface-experience/component-utilities/ui-frameworks/component-apis/communication-data-flow/component-communication.md) — Facilitates decoupled communication between independent components through event-based messaging patterns. ([source](https://livewire.laravel.com/docs/4.x/attribute-reactive))
- [Computed State Properties](https://awesome-repositories.com/f/user-interface-experience/computed-state-properties.md) — Provides memoized computed properties that automatically recalculate based on reactive dependencies to maintain data consistency. ([source](https://livewire.laravel.com/docs/4.x/computed-properties))
- [Dynamic Component Rendering](https://awesome-repositories.com/f/user-interface-experience/dynamic-component-rendering.md) — Supports rendering different child components at runtime based on variable values for conditional interface patterns. ([source](https://livewire.laravel.com/docs/4.x/nesting))
- [Property-Scoped Event Listeners](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/interaction-and-event-handling/event-handling-architectures/component-events/property-scoped-event-listeners.md) — Filters incoming events by binding them to specific property values to ensure relevant updates. ([source](https://livewire.laravel.com/docs/4.x/attribute-on))
- [Keyed Element Tracking](https://awesome-repositories.com/f/user-interface-experience/interface-element-management/keyed-element-tracking.md) — Assigns unique identifiers to components in loops to track and update elements correctly during state changes. ([source](https://livewire.laravel.com/docs/4.x/nesting))
- [Performance Isolation](https://awesome-repositories.com/f/user-interface-experience/performance-optimizers/performance-isolation.md) — Quarantines expensive operations or slow database queries within independent components to prevent performance overhead on the rest of the page. ([source](https://livewire.laravel.com/docs/4.x/understanding-nesting))
- [Isolated Rendering Regions](https://awesome-repositories.com/f/user-interface-experience/presentation-frameworks/lifecycle-state-management/component-lifecycle-management/isolated-rendering-regions.md) — Creates independent sections within a component that re-render separately to improve performance. ([source](https://livewire.laravel.com/docs/4.x/directive-island))
- [Recursive Components](https://awesome-repositories.com/f/user-interface-experience/recursive-components.md) — Allows components to render themselves recursively to build hierarchical structures like tree views. ([source](https://livewire.laravel.com/docs/4.x/nesting))
- [Component Styling](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/component-styling-tools/component-styling.md) — Isolates CSS rules to specific components to prevent style leakage across the application. ([source](https://livewire.laravel.com/docs/4.x/styles))
- [UI State Preservation](https://awesome-repositories.com/f/user-interface-experience/ui-state-preservation.md) — Maintains element state and DOM structure during page transitions to ensure a seamless user experience. ([source](https://livewire.laravel.com/docs/4.x/directive-persist))
- [User Confirmation Dialogs](https://awesome-repositories.com/f/user-interface-experience/user-confirmation-dialogs.md) — Displays a browser-native confirmation dialog before executing a sensitive action to prevent accidental triggers by the user. ([source](https://livewire.laravel.com/docs/4.x/actions))

### Web Development

- [Full-Stack Web Frameworks](https://awesome-repositories.com/f/web-development/full-stack-web-frameworks.md) — Provides a full-stack framework for building reactive web applications using server-side PHP classes and templates.
- [Client-Side Method Exposures](https://awesome-repositories.com/f/web-development/client-side-method-exposures.md) — Exposes a client-side object for direct access to server-side component properties and methods. ([source](https://livewire.laravel.com/docs/4.x/alpine))
- [Reactive Frameworks](https://awesome-repositories.com/f/web-development/server-side-frameworks/reactive-frameworks.md) — Enables real-time interactivity and state management by bridging server-side logic and client-side DOM updates.
- [Real-Time UI Synchronization](https://awesome-repositories.com/f/web-development/real-time-ui-synchronization.md) — Updates server-side properties incrementally as users interact with inputs to enable live search and immediate validation. ([source](https://livewire.laravel.com/docs/4.x/forms))
- [Dynamic Navigation Systems](https://awesome-repositories.com/f/web-development/dynamic-navigation-systems.md) — Accelerates web browsing by intercepting link clicks to fetch and replace page content in the background without full browser reloads.
- [Event Listeners](https://awesome-repositories.com/f/web-development/event-listeners.md) — Executes specific methods in response to application or browser events. ([source](https://livewire.laravel.com/docs/4.x/attribute-on))
- [Real-time Validation](https://awesome-repositories.com/f/web-development/form-validation/real-time-validation.md) — Triggers validation checks during user input events to provide immediate feedback without requiring a full form submission. ([source](https://livewire.laravel.com/docs/4.x/validation))
- [Full-Stack Form Managers](https://awesome-repositories.com/f/web-development/full-stack-form-managers.md) — Consolidates validation, data binding, and submission logic into reusable components to maintain consistent behavior across complex web forms.
- [Page-Based Web Frameworks](https://awesome-repositories.com/f/web-development/page-based-web-frameworks.md) — Maps components directly to URL routes to serve as full web pages, bypassing traditional controllers. ([source](https://livewire.laravel.com/docs/4.x/components))
- [Client-Side Components](https://awesome-repositories.com/f/web-development/client-side-components.md) — Embeds lightweight client-side components within server-rendered templates to handle local UI state changes. ([source](https://livewire.laravel.com/docs/4.x/alpine))
- [Component Composition](https://awesome-repositories.com/f/web-development/component-composition.md) — Enables rendering multiple independent components within a parent to build modular, complex user interfaces. ([source](https://livewire.laravel.com/docs/4.x/understanding-nesting))
- [Property Bindings](https://awesome-repositories.com/f/web-development/frontend-development-tools/frontend-frameworks/directives/property-bindings.md) — Synchronizes parent and child data automatically through property binding to ensure consistent state across components. ([source](https://livewire.laravel.com/docs/4.x/attribute-modelable))
- [Lifecycle Hooks](https://awesome-repositories.com/f/web-development/application-lifecycle-hooks/lifecycle-hooks.md) — Subscribes to internal events to execute custom logic during specific phases of the application lifecycle. ([source](https://livewire.laravel.com/docs/4.x/javascript))
- [CSP-Safe Build Configurations](https://awesome-repositories.com/f/web-development/compiler-based-framework-support/csp-compatible-renderers/csp-safe-build-configurations.md) — Enables the application to function in environments with strict security policies that prohibit unsafe-eval by using pre-compiled client-side logic. ([source](https://livewire.laravel.com/docs/4.x/csp))
- [File Uploads](https://awesome-repositories.com/f/web-development/file-uploads.md) — Integrates file input fields into components to capture, validate, and store user-provided files. ([source](https://livewire.laravel.com/docs/4.x/uploads))
- [Client-Side Component Interfaces](https://awesome-repositories.com/f/web-development/frontend-development-tools/state-data-management/component-lifecycle-utilities/component-state-management/client-side-component-interfaces.md) — Provides a client-side object to access component properties, call server-side methods, and manage state directly from JavaScript. ([source](https://livewire.laravel.com/docs/4.x/javascript))
- [Deferred Loading](https://awesome-repositories.com/f/web-development/performance-optimizations/initial-page-load-optimizations/deferred-loading.md) — Delays rendering of specific components until after the initial page load to prevent slow elements from blocking primary content. ([source](https://livewire.laravel.com/docs/4.x/attribute-defer))
- [State Synchronization](https://awesome-repositories.com/f/web-development/state-synchronization.md) — Automatically synchronizes child component properties with parent data to maintain consistent interface state without manual re-rendering. ([source](https://livewire.laravel.com/docs/4.x/attribute-reactive))
- [Route Mappers](https://awesome-repositories.com/f/web-development/web-components/route-mappers.md) — Maps specific UI components to web endpoints so that visiting a URL triggers the rendering of the associated component. ([source](https://livewire.laravel.com/docs/3.x/quickstart))
- [Optimistic Update Handlers](https://awesome-repositories.com/f/web-development/client-side-logic/optimistic-update-handlers.md) — Allows running scripts in the browser to provide immediate visual feedback or optimistic updates before server responses are received. ([source](https://livewire.laravel.com/docs/4.x/actions))

### Software Engineering & Architecture

- [Server-Side Reactive Components](https://awesome-repositories.com/f/software-engineering-architecture/reactive-component-models/server-side-reactive-components.md) — Defines interactive UI elements using server-side classes that automatically synchronize state without custom client-side scripts. ([source](https://livewire.laravel.com/docs))
- [Navigation Acceleration](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/frontend-rendering-loading/page-navigation-prefetching/navigation-acceleration.md) — Intercepts link clicks and redirects to fetch page content in the background, replacing the current view without a full browser reload. ([source](https://livewire.laravel.com/docs/4.x/navigate))
- [Action Parameter Authorization](https://awesome-repositories.com/f/software-engineering-architecture/custom-action-handlers/custom-action-authorizers/action-parameter-authorization.md) — Validates and authorizes user-provided arguments passed to component methods to prevent unauthorized data modification or deletion. ([source](https://livewire.laravel.com/docs/4.x/security))
- [Parallel Action Handlers](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/state-management/state-logic-and-utilities/asynchronous-action-handlers/parallel-action-handlers.md) — Executes component actions in parallel to ensure immediate responsiveness during network requests. ([source](https://livewire.laravel.com/docs/4.x/attribute-async))
- [Dependency Injection](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/dependency-injection.md) — Resolves required services or data models automatically from the container when executing backend methods. ([source](https://livewire.laravel.com/docs/4.x/actions))
- [Page Navigation Prefetching](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-optimization/frontend-rendering-loading/page-navigation-prefetching.md) — Loads destination pages in the background upon user interaction with links to minimize latency during navigation. ([source](https://livewire.laravel.com/docs/4.x/navigate))

### Graphics & Multimedia

- [DOM Reconciliation](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/dom-web-rendering-strategies/surgical-dom-update-engines/dom-reconciliation.md) — Compares current and new HTML to apply only necessary changes, preserving element state like focus while improving rendering performance. ([source](https://livewire.laravel.com/docs/4.x/morphing))

### Security & Cryptography

- [Persistent Middleware Enforcement](https://awesome-repositories.com/f/security-cryptography/authorization-middleware/persistent-middleware-enforcement.md) — Re-applies route-level authorization middleware on every network request to ensure permissions remain valid throughout the component lifecycle. ([source](https://livewire.laravel.com/docs/4.x/security))
- [Component Integrity Verification](https://awesome-repositories.com/f/security-cryptography/cryptographic-verification/component-integrity-verification.md) — Uses cryptographic checksums to detect and reject tampered component data payloads between server round-trips to prevent malicious state manipulation. ([source](https://livewire.laravel.com/docs/4.x/security))

### Data & Databases

- [Pagination](https://awesome-repositories.com/f/data-databases/pagination.md) — Splits large collections into manageable pages with navigation links for incremental content browsing. ([source](https://livewire.laravel.com/docs/4.x/pagination))
- [State Persistence](https://awesome-repositories.com/f/data-databases/state-persistence.md) — Persists component property values in the user session to maintain data availability across page refreshes. ([source](https://livewire.laravel.com/docs/4.x/attribute-session))

### Networking & Communication

- [Response Streaming Utilities](https://awesome-repositories.com/f/networking-communication/response-streaming-utilities.md) — Sends content to the browser incrementally during a single request to update specific page elements. ([source](https://livewire.laravel.com/docs/4.x/wire-stream))
