ValidationRule support, reducing custom middleware or service layer overhead.FormRequest classes (e.g., validateRecaptcha:v3).Validator::make($data, ['token' => 'required|recaptcha:v3'])).recaptcha directive (e.g., @recaptcha('v3') in Blade templates)..env checks).recaptcha vs. recaptcha:v3).snipify\Captcha\Rules\Recaptcha).validation.failed event)?Validator::make() or custom middleware..env with keys.recaptcha:v3 in FormRequest classes.Http::fake()).@recaptcha directives.mount() or rules().RecaptchaMiddleware for API routes.| Component | Compatibility Notes |
|---|---|
| Laravel 10–12 | Full support. No breaking changes expected. |
| Livewire 3.x | Native support. Livewire 4.x may require updates. |
| PHP 8.2+ | Uses modern features (e.g., named arguments). No downgrade path. |
| Testing | Automatically disabled in testing env. Use Recaptcha::shouldDisable() for manual control. |
| Custom Forms | Works with Blade, Inertia, or APIs via validation rules. |
localhost for dev).composer require).php artisan vendor:publish --tag="laravel-captcha-config".RecaptchaException)..env).CaptchaServiceInterface).RECAPTCHA_SECRET_KEY and domain whitelisting.@recaptcha is placed in the correct Blade template.Recaptcha::verify() manually to test responses.RECAPTCHA_DEBUG=true for verbose logging.us-east1 vs. europe-west1).| Failure Scenario | Impact | Mitigation Strategy |
|---|---|---|
| Google API Downtime | Forms break | Implement fallback CAPTCHA (e.g., simple math |
How can I help you explore Laravel packages today?