Looking to hire Laravel developers? Try LaraJobs

multi-captcha-laravel maintained by geekk

Description
geekk/multi-captcha integration for laravel
Author
Last update
2026/03/04 08:25 (dev-main)
License
Downloads
24 023

Comments
comments powered by Disqus

multi-captcha-laravel

Laravel's integration for package geekk/multi-captcha

Installation

Install package:

composer require geekk/multi-captcha-laravel

Create configuration file:

php artisan vendor:publish --provider="Geekk\MultiCaptcha\Laravel\CaptchaServiceProvider" --tag="config"

Fill driver's specific setting in it:

'recaptcha2' => [
    'driver' => 'recaptcha2',
    'site_key' => 'your site key for reCaptcha v2',
    'secret_key' => 'your secret key for reCaptcha v2'
],

'hcaptcha' => [
    'driver' => 'hcaptcha',
    'site_key' => 'your site key for hCaptcha',
    'secret_key' => 'your secret key for hCaptcha'
],

'kcaptcha' => [
    'driver' => 'kcaptcha',
    'show_credits' => false
],

'gregwar' => [
    'driver' => 'gregwar',
    // optional: width, height, length, quality, allowed_symbols
],

'turnstile' => [
    'driver' => 'turnstile',
    'site_key' => 'your site key for Cloudflare Turnstile',
    'secret_key' => 'your secret key for Cloudflare Turnstile'
],

Keys for Turnstile are obtained from the Cloudflare Dashboard → Turnstile.

Using

Get CaptchaManager from Laravel's dependency container:

use Geekk\MultiCaptcha\Laravel\CaptchaManager;

$captchaManager = app(CaptchaManager::class)

$captcha = $captchaManager->getCaptcha();

// Render captcha in template
echo $captcha->render();

// Verify user's response
$result = $captcha->verify($captchaManager->getRequest($request));

Customising captcha's view

Use css for a customizing.

For captcha's templates generated on frontend side you can get data from method CaptchaInterface::getViewData().