Skip to content

romanzipp/Laravel-Turnstile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Turnstile

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