geekk/multi-captcha-laravel

geekk/multi-captcha integration for laravel

Maintainers

Package info

github.com/geekk-net/multi-captcha-laravel

pkg:composer/geekk/multi-captcha-laravel

Statistics

Installs: 23 502

Dependents: 0

Suggesters: 0

Stars: 2

Open Issues: 0

1.4.0 2026-03-04 07:25 UTC

This package is auto-updated.

Last update: 2026-03-04 07:26:00 UTC


README

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().