PHPackages                             nyoncode/wire-forms - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Validation &amp; Sanitization](/categories/validation)
4. /
5. nyoncode/wire-forms

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

nyoncode/wire-forms
===================

Standalone form system for the Wire ecosystem – fields, validation, layout, standalone Livewire form support.

0.0.2(2w ago)001MITPHPPHP ^8.2

Since May 22Pushed 2w agoCompare

[ Source](https://github.com/NyonCode/wire-forms)[ Packagist](https://packagist.org/packages/nyoncode/wire-forms)[ RSS](/packages/nyoncode-wire-forms/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (7)Versions (3)Used By (1)

Wire Forms
==========

[](#wire-forms)

Standalone form system for Laravel Livewire. 20+ field types, validation, layout components. Can be used **independently** or together with [Wire Table](https://github.com/NyonCode/wire-table).

Requirements
------------

[](#requirements)

- PHP 8.2+
- Laravel 10, 11, or 12
- Livewire 3.x
- Tailwind CSS 3.x
- Node.js &amp; npm (for Vite asset compilation)

Installation
------------

[](#installation)

```
composer require nyoncode/wire-forms
```

This automatically installs `wire-core` as a dependency. The service providers are auto-discovered.

### Tailwind CSS Setup

[](#tailwind-css-setup)

Wire Forms uses Tailwind utility classes in its Blade templates. Add the package views to your Tailwind content paths:

**Tailwind 3** (`tailwind.config.js`):

```
export default {
    content: [
        './resources/**/*.blade.php',
        './app/**/*.php',
        './vendor/nyoncode/wire-core/resources/views/**/*.blade.php',
        './vendor/nyoncode/wire-forms/resources/views/**/*.blade.php',
    ],
    darkMode: 'class',
    plugins: [require('@tailwindcss/forms')],
}
```

**Tailwind 4** (`resources/css/app.css`):

```
@import "tailwindcss";
@plugin "@tailwindcss/forms";
@source "../../vendor/nyoncode/wire-core/resources/views";
@source "../../vendor/nyoncode/wire-forms/resources/views";
```

Install the forms plugin and rebuild:

```
npm install -D @tailwindcss/forms
npm run build
```

### Layout Template

[](#layout-template)

Your layout must include Vite assets and Livewire (which provides Alpine.js):

```

    @vite(['resources/css/app.css', 'resources/js/app.js'])
    @livewireStyles

    {{ $slot }}
    @livewireScripts

```

### Publish Config (optional)

[](#publish-config-optional)

```
php artisan vendor:publish --tag=wire-forms-config
```

Quick Start: Standalone Form
----------------------------

[](#quick-start-standalone-form)

Wire Forms works without Wire Table. Here's a complete standalone form using `WithForms` trait and `Form` class:

```
