A Laravel package for dry-run request validation to provide real-time feedback without executing controller logic.
Laravel Dry Requests is a Laravel package that enables developers to validate HTTP requests without executing controller logic, similar to a `--dry-run` flag in CLI tools. It solves the problem of maintaining duplicate validation logic on client and server sides by allowing real-time server-side validation as users fill out forms, ensuring validation rules are defined in a single place.
Laravel developers building JavaScript applications (such as SPAs, Inertia.js apps, or mobile backends) that require real-time form validation with server-side accuracy. It's particularly useful for teams maintaining complex forms or multi-step wizards.
Developers choose Laravel Dry Requests because it eliminates the need to duplicate validation logic between client and server, providing 100% accurate real-time feedback using existing Laravel validation rules. Its seamless integration with FormRequest classes and support for partial validation make it ideal for enhancing user experience in dynamic forms.
Check if your requests would pass validation if you executed them normally
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Eliminates duplicate validation logic by reusing server-side Laravel rules for real-time client feedback, as highlighted in the philosophy section.
Provides 100% accurate validation as users type using server-side rules, ensuring business logic is enforced immediately without client-side duplication.
Validates only present fields, ideal for multi-step forms or wizards, allowing incremental feedback before full submission.
Easily adds dry-run capability to existing FormRequest classes with a trait, or works automatically with inline validation, minimizing code changes.
The package is obsolete since Laravel Precognition was introduced as a core feature, with maintenance stopped, posing risks for long-term projects.
Can conflict with custom FormRequest methods like passedValidation, requiring manual calls to dry-run methods, adding complexity as noted in the README.
Tightly coupled to Laravel's FormRequest system and validation ecosystem, making it unsuitable for non-Laravel or mixed-technology stacks.