romanzipp/laravel-turnstile

Cloudflare Turnstile package for Laravel

Fund package maintenance!
romanzipp

1.3.0 2024-03-19 08:23 UTC

This package is auto-updated.

Last update: 2024-12-19 09:58:54 UTC


README

Latest Stable Version Total Downloads License GitHub Build Status GitHub Build Status GitHub Build Status

Cloudflare Turnstile CAPTCHA package for Laravel.

Installation

composer require romanzipp/laravel-turnstile

Configuration

Copy configuration to project:

php artisan vendor:publish --provider="romanzipp\Turnstile\Providers\TurnstileServiceProvider"

Add environmental variables to your .env:

TURNSTILE_SITE_KEY=
TURNSTILE_SECRET_KEY=

Usage

Laravel Rule

use romanzipp\Turnstile\Rules\TurnstileCaptcha;

$payload = $request->validate([
    'cf-turnstile-response' => ['required', 'string', new TurnstileCaptcha()],
]);

Templates

Document head

Injects the script tag. See method signature for more options.

{{ romanzipp\Turnstile\Captcha::getScript() }}

Form

Injects the form element. See method signature for more options.

{{ romanzipp\Turnstile\Captcha::getChallenge() }}

Manual validation (optional)

use romanzipp\Turnstile\Validator;

$validator = new Validator();
$response = $validator->validate('input-token');

if ($response->isValid()) {
    return true;
}

echo $response->getMessage();

Development

Run Tests

composer test

License

Released under the MIT License.

Authors