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

Livewire Form Laravel Package

hungnm28/livewire-form

Reusable Blade UI components for Laravel and Livewire apps, including form inputs, buttons, modals, asides, theme switching, and Tailwind/Alpine-powered interactions. Config, views, and assets are publishable for easy integration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Time-to-first-screen on form-heavy surfaces (build vs. buy): The package ships anonymous Blade components under the lf:: prefix covering the exact primitives that eat sprint capacity — inputs, selects, textareas, checkboxes, toggles, buttons, tables, modals, aside layouts, and light/dark/system theming. For a CRUD console, admin panel, onboarding flow, or settings page, this is a buy-and-wrap decision: adopt the primitives, keep business logic in-house, and redirect engineering effort to workflow and validation logic rather than restyling <input> elements for the fifth time.
  • Design-system consolidation: Because every component is primary-*-driven and themed via a single config key ('theme' => 'orange'), this supports a roadmap decision to standardize on one Tailwind token palette instead of accumulating per-team one-off markup. Treat the package as the floor of your component library, not the ceiling.
  • Roadmap sequencing for Laravel/Livewire upgrades: Declared support for PHP 8.3+, Laravel 10–13, and Livewire 3/4 means the package can be positioned as upgrade-compatible scaffolding — it won't block a framework modernization track. If you are planning a Laravel 12/13 or Livewire 4 move, this reduces the "rewrite the admin UI first" tax.
  • Theming and UX polish as a low-cost roadmap item: Built-in modal, aside, fullscreen, and theme cycling (data-action="cycleTheme", Alpine themeSetting store) let you put dark mode and an app shell on the roadmap without a dedicated frontend project. It also exposes open-modal / close-modal DOM events, so modals can be driven from non-Livewire code paths.
  • Make-vs-fork on missing components: Views and assets are publishable (livewire-form-views, livewire-form-assets), and Livewire components can be mapped via an alias => class config array. That is a deliberate "extend, don't fork" contract — you localize divergence into published views and registered aliases, keeping the upstream dependency upgradeable.
  • Where it does not drive decisions: With 0 stars, 0 dependents, and release notes that read only "Version 2.1.5", this package carries no ecosystem signal. It should not be a factor in any decision that assumes third-party longevity, community support, or vendor SLAs. Frame it as a vendored-in-spirit dependency, not a platform bet.

When to Consider This Package

Adopt when:

  • Your stack already is Tailwind CSS + Alpine.js + Livewire 3/4 on Laravel 10+. Every one of those is a hard prerequisite; the package does not degrade gracefully outside it.
  • You are building greenfield or a self-contained admin/internal surface where a broken component is a bug, not an outage.
  • You have no dedicated frontend engineer and need forms, tables, and modals that look coherent out of the box.
  • You can absorb the two manual integration chores: adding the package views to tailwind.config.js content paths, and defining primary-* in your theme (or mapping it to an existing palette).
  • You are willing to pin the version and own the upgrade path, including publishing views to a local directory so you are not at the mercy of an unannounced template change.
  • You accept Tabler Icons Webfont as a dependency — or set assets.use_cdn_icons => false and bundle it yourself, which is the right call for any app with a CSP or performance budget.

Look elsewhere when:

  • Maturity and support are requirements. 0 stars, 0 dependents, and a single maintainer is a bus-factor of one. If the UI is customer-facing and revenue-adjacent, the support risk dominates the velocity gain.
  • Accessibility is a gating requirement. The README never claims WCAG conformance, keyboard trap handling, focus restoration on modal close, or screen-reader labeling for the toggle/theme controls. Audit before committing, or budget remediation work.
  • Your design language exceeds a primary-color system. Multi-brand, per-tenant theming, or a token architecture beyond primary-* will fight the package rather than benefit from it.
  • You need complex form behavior. Multi-step wizards with heavy conditional logic, drag-and-drop field builders, virtualized large forms, or file-upload UX are outside the documented scope.
  • You are on Tailwind v4 or a different CSS framework. The README's tailwind.config.js instructions are v3-shaped; the CSS-first v4 content configuration is undocumented here. Non-Tailwind stacks (Bootstrap, Bulma, DaisyUI, Flowbite) are a non-starter.
  • You already have a component library. Overlap with an existing internal system creates two sources of truth — the exact duplication cost this package is meant to remove.
  • You are pre-Laravel 10, pre-PHP 8.3, or on Livewire 2.

Non-negotiable diligence before signing off:

  1. Run composer test on a branch and inspect actual coverage — the README documents the command but not what it covers.
  2. Confirm Livewire validation error display works end-to-end (wire:model binding plus @error surfacing) — this is the single highest-risk unstated assumption in the README.
  3. Confirm the Alpine version the package's app.js expects matches Livewire's bundled Alpine. The README explicitly warns that overridden Livewire frontend assets will break interactive components.
  4. Note the backwards-compatibility typo aliases (form.toogle, theme.toogle) as evidence of public-API churn. Do not build on aliases that are already deprecated on arrival.

How to Pitch It (Stakeholders)

To executives — the one-paragraph case:

This is an MIT-licensed set of pre-built form and layout components for our Laravel/Livewire stack. The value is straightforward: it removes the routine UI work — inputs, tables, modals, page shell, dark mode — from every form-related feature we ship, so engineering time goes to logic and workflow instead of markup. It's free, it installs with one command, and it slots into the stack we already run. The honest caveat is maturity: it's a young, single-maintainer package with no adoption yet, so I'm recommending a bounded pilot on internal tooling — not customer-facing surfaces — with a pinned version. If the pilot pays off, we expand; if not, we've lost a few days, not a quarter. The pilot is the go/no-go gate, and I'll bring you the result before any broader commitment.

To engineering — the practical case:

We get lf::-prefixed Blade components for form controls, buttons, tables, modals, asides, and a layout shell, plus Alpine-powered theme switching and modal events. It's Livewire-native — <x-lf::form.input wire:model="form.email" /> just works — and it supports Laravel 10–13 and Livewire 3/4, so it won't block our upgrade path. The tradeoffs are real and I want them on the table: it hard-requires Tailwind and Alpine, it wants primary-* defined in our theme, it pulls Tabler Icons (we'll self-bundle with use_cdn_icons => false), and we must add the package views to our Tailwind content globs. We'll publish views locally so customization stays in our repo and upstream stays upgradeable. We pin the version, we run the test suite first, and we verify Livewire validation errors and modal focus behavior before it touches anything that matters. Treat it as scaffolding we own, not a dependency we trust.

What to commit to, concretely:

  • Pilot scope: one internal, low-blast-radius surface (admin panel or settings page), 4–6 weeks, version-pinned.
  • Success criteria defined up front: components used per screen, hours saved versus a comparable hand-built form, zero unexplained accessibility regressions.
  • Exit criteria written down too: if the pilot surfaces blocking a11y gaps or unresolvable Tailwind theme conflicts, we stop and the cost is the pilot, not the roadmap.
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.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin