excelwebzone/recaptcha-bundle
Symfony bundle that adds Google reCAPTCHA (v2 and v3) form field integration with simple configuration for keys, locale/options, enable/disable per environment, custom API host for regions like China, and optional HTTP proxy support.
FormRequest, ValidatesRequest, or third-party packages like laravel-form-components) differs fundamentally from Symfony’s Form component.FormBuilder and EventDispatcher systems requires significant refactoring or wrapper development.spatie/laravel-recaptcha, bestmomo/laravel-recaptcha) with broader adoption and Laravel-native implementations.FormType, EventListener).config/recaptcha.php or service container.Kernel events).Guzzle or Laravel’s Http client, bypassing the bundle entirely.Symfony/Component/Form) for a Laravel project could introduce conflicts or unnecessary complexity.Doctrine or Twig) that justify the effort?spatie/laravel-recaptcha or similar been ruled out for feature gaps?Form component for field rendering.EventDispatcher for hooks (e.g., recaptcha.verify).Validator::make()) with the Google reCAPTCHA API.@google/recaptcha) with Laravel’s Blade or Inertia.js.spatie/laravel-recaptcha (10K+ stars) or bestmomo/laravel-recaptcha.spatie/laravel-recaptcha via Composer.config/recaptcha.php).EWZRecaptchaValidator).RecaptchaService).Events facade or middleware.FormType: Replace with Laravel’s FormRequest or ValidatesRequest.EventDispatcher: Replace with Laravel’s Event system or middleware.Twig: Replace with Blade or Inertia.js.ewz_recaptcha.yaml) to Laravel’s config/recaptcha.php.// config/recaptcha.php
return [
'site_key' => env('RECAPTCHA_SITE_KEY'),
'secret_key' => env('RECAPTCHA_SECRET_KEY'),
'version' => env('RECAPTCHA_VERSION', 'v3'), // Match Google's API
];
Http tests.spatie/laravel-recaptcha against bundle features.spatie/laravel-recaptcha and update forms.RecaptchaService and test API calls.AppKernel references).spatie/laravel-recaptcha is actively maintained (last update: 2024).spatie/laravel-recaptcha has:
recaptcha:verify responses).| Scenario | Bundle Risk | Laravel Alternative Risk |
|---|---|---|
| Google API downtime | High (bundle may not handle retries) | Low (Laravel’s Http client supports retries) |
| Symfony dependency conflicts | Critical (breaks Laravel) | None |
| Configuration errors | Hard to debug (Symfony-specific) | Clear Laravel error messages |
| Form submission failures | May require Symfony expertise | Standard Laravel validation errors |
FormType, EventSubscriber).spatie/laravel-recaptcha.How can I help you explore Laravel packages today?