Getting Started
Installation
Install the Laravel and Vue packages and prepare your application for its first headless form.
Requirements
- PHP 8.3 or newer
- Laravel 12 or 13
inertiajs/inertia-laravel3.3 or newer- Node.js 20 or newer
- Vue 3.5 or newer
@inertiajs/vue33.6 or newer
React is not supported.
Install both packages
Install the Laravel package with Composer and the Vue runtime with your application's package manager:
Terminal
composer require inertify/form
npm install @inertify/form-vue
Laravel discovers Inertify\Form\FormServiceProvider automatically. No manual provider registration is required.
Generate a form
Create a container-resolved form class with the Artisan generator:
Terminal
php artisan make:form ProfileForm
The command creates app/Forms/ProfileForm.php. Add field objects to its fields() method, then pass the form directly to Inertia.
Optional configuration
The default configuration is suitable until you enable or customize uploads. Publish it with:
Terminal
php artisan vendor:publish --tag=inertia-forms-config
The aliases inertify-form and inertify-form-config are also registered for package-native publishing workflows.
Upload routes are opt-in. Register them only when a form uses managed uploads, and retain authentication plus application-specific authorization, tenant, and rate-limit middleware.
Next step
Build a server-side schema and validate it in a controller on the first form page.