Weave 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
Laravel Livewire Forms

Laravel Livewire Forms Laravel Package

wotz/laravel-livewire-forms

A Laravel package for building and managing forms with Livewire, helping you wire up form components, validation, and stateful UI without repetitive boilerplate. Streamlines common form workflows so you can focus on your app's logic.

View on GitHub
Deep Wiki
Context7

wotz/laravel-livewire-forms streamlines building dynamic, reactive forms in Laravel Livewire. It reduces boilerplate around form state, validation, and error handling, letting you focus on clean, maintainable form logic.

  • Livewire-native form components and bindings
  • Simplified validation and error display
  • Reusable form fields for consistent UI
  • Clean state management for complex forms
  • Laravel-friendly integration with minimal setup
Frequently asked questions about Laravel Livewire Forms
What is wotz/laravel-livewire-forms used for?
It is a Laravel package that adds a form-object abstraction on top of Livewire, intended to reduce the hand-rolled duplication of public properties, a rules() array, and per-field error display across many components. The goal is reusable form components, centralized validation handling, and cleaner data binding for dynamic, reactive interfaces. It is additive and sits at the form layer where component state, validation, and Blade rendering meet. It is not a UI kit or a replacement for Livewire itself.
How do I install wotz/laravel-livewire-forms?
Install it with Composer using composer require wotz/laravel-livewire-forms. Laravel package discovery should register the service provider automatically, and adoption is typically opt-in per component through a trait or base class. There are no migrations, queue workers, or external services involved, so the integration cost is measured in a short spike rather than weeks. Confirm the exact opt-in mechanism in the repository README before wiring it into existing components.
Which Laravel and Livewire versions does this package support?
That is not stated in the package metadata reviewed, so check the declared constraints for laravel/framework and livewire/livewire in its composer.json before adopting. Livewire's form APIs changed materially between v2 and v3, which makes the Livewire constraint the decisive one. The package has no dependents or stars, so there is no field evidence that its version matrix is exercised against currently supported framework releases. Verify the constraints and whether CI tests across that matrix.
Does it wrap Livewire 3's native Form object or reimplement form state and validation?
This is the single most important question about the package and it cannot be answered from the repository metadata alone. If it wraps Livewire 3's built-in Form object, it is a thin convenience layer and low risk. If it reimplements state binding, validation dispatch, and error bag handling, it is a parallel runtime that must track every Livewire major release. Inspect the source to determine which before committing.
What is the concrete API surface of the package?
The metadata does not specify whether it exposes a trait, a base component class, a PHP attribute, or a service. In practice these packages usually opt in per component via a trait or base class, with the form object holding properties and rules. Read the README and source to confirm the exact entry point before designing around it. This also tells you how invasive removal would be later.
Is it safe to use in production?
Treat it as unproven: zero stars and zero dependents means no external validation of correctness, security posture, or API stability. Other risk vectors include a single-maintainer bus factor, an unvetted transitive dependency surface, and no visible security disclosure channel. The release metadata shows a 2026-04-17 date, which should be verified as a future-dated tag, a timezone artifact, or a re-tag before you trust the version string. A reasonable path is a spike behind one low-risk internal form rather than a big-bang rollout.
Does the package require migrations, config publishing, or extra infrastructure?
No. It targets the form layer inside Livewire components, so there is no database footprint, no queue workers, and no external services to provision. Integration is Composer install plus package discovery plus per-component opt-in. That keeps rollback cheap if the spike does not work out.
How does it handle validation rules and error display in Blade?
The intent is to centralize validation rules and wire error display so you are not repeating a rules() array and per-field error markup in every component. Whether the errors come from Laravel's validator through Livewire's own error bag or from a parallel implementation is the thing to verify in source. If the abstraction leaks, you can get validation behavior that diverges subtly from Laravel's validator, a defect that tends to pass code review and surface only under edge-case input. Test nested and array fields, file uploads, and dirty-state tracking explicitly.
Can I remove the package later without rewriting my Blade views?
That depends on whether the package's Blade directives or components appear in your templates. If it only supplies a trait or base class and the view keeps standard wire:model bindings and @error directives, removal is mostly a PHP-side change. If the views use package-provided form components, plan for view edits during removal. Adopting it behind a single low-risk form first is the cheapest way to measure this.
What are the alternatives, and is the package actively maintained?
The main alternative is Livewire 3's native Form object, which is redundant with this package if your codebase already standardizes on it. Writing a plain rules() method per component remains valid for small apps. Maintenance signals here are weak: a single maintainer, no documented support or deprecation policy, and no adoption evidence. Check the tag history and release cadence before depending on it, and keep a form built on it removable without rewriting the Blade view.
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.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo