PHPackages                             f9webltd/invisible-recaptcha - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. f9webltd/invisible-recaptcha

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

f9webltd/invisible-recaptcha
============================

Invisible reCAPTCHA For Laravel.

3.0.0(2mo ago)781.8k↑23.8%1MITPHPPHP ^8.2

Since Jun 29Pushed 2mo agoCompare

[ Source](https://github.com/f9webltd/invisible-recaptcha)[ Packagist](https://packagist.org/packages/f9webltd/invisible-recaptcha)[ RSS](/packages/f9webltd-invisible-recaptcha/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (8)Versions (6)Used By (0)

Laravel Invisible reCAPTCHA v3
==============================

[](#laravel-invisible-recaptcha-v3)

[![Packagist PHP Version](https://camo.githubusercontent.com/d455cbe6ae751be766d7eeb601382fd589e9147c1b806d2de153d405f3639e03/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f66397765626c74642f696e76697369626c652d7265636170746368613f7374796c653d666c61742d737175617265)](https://packagist.org/packages/f9webltd/invisible-recaptcha)[![Packagist Version](https://camo.githubusercontent.com/cd277c14ab22a2f7464a8fcf2e2de41273ff0cdb30ea9aab850727caf47d4368/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f66397765626c74642f696e76697369626c652d7265636170746368613f7374796c653d666c61742d737175617265)](https://packagist.org/packages/f9webltd/invisible-recaptcha)[![Packagist License](https://camo.githubusercontent.com/5019ce963ffc57e5a3f0ce5a2ffac674863b381f7e12df7b4f9e1d54548f9212/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f66397765626c74642f696e76697369626c652d7265636170746368613f7374796c653d666c61742d737175617265)](https://packagist.org/packages/f9webltd/invisible-recaptcha)

[![invisible_recaptcha_demo](https://camo.githubusercontent.com/db912f64af2f54c24e06ad603639f6824ea73addffa3ceb3f6328913982d2cf5/687474703a2f2f692e696d6775722e636f6d2f31645a39584b6e2e706e67)](https://camo.githubusercontent.com/db912f64af2f54c24e06ad603639f6824ea73addffa3ceb3f6328913982d2cf5/687474703a2f2f692e696d6775722e636f6d2f31645a39584b6e2e706e67)

Background
----------

[](#background)

28/06/2024 - the [original repository](https://github.com/albertcht/invisible-recaptcha) has not been updated for over 2 years and lacks Laravel 11 support and a [critical PR](https://github.com/albertcht/invisible-recaptcha/pull/173) relating to patch the recent polyfillio\[dot\]io attack. This fork includes both fixes and drops support for old Laravel and PHP versions. I plan to tidy up the forked repository, add GitHub workflows and set a different namespace.

Requirements
------------

[](#requirements)

- PHP `^8.2`
- Laravel `^11.0`, `^12.0` or `^13.0`

The package supports actively supported Laravel releases as per the official [Laravel Support Policy](https://laravel.com/docs/master/releases#support-policy).

Installation
------------

[](#installation)

```
composer require f9webltd/invisible-recaptcha

```

### Setup

[](#setup)

Add ServiceProvider to the providers array in `app/config/app.php`.

```
AlbertCht\InvisibleReCaptcha\InvisibleReCaptchaServiceProvider::class,

```

### Configuration

[](#configuration)

Before you set your config, remember to choose `invisible reCAPTCHA` while applying for keys. [![invisible_recaptcha_setting](https://camo.githubusercontent.com/bc407e52682a0ddbd067c418416e1307c9ddcd0ef16b51bbac6d414277dadbe4/687474703a2f2f692e696d6775722e636f6d2f7a49416c4b62592e6a7067)](https://camo.githubusercontent.com/bc407e52682a0ddbd067c418416e1307c9ddcd0ef16b51bbac6d414277dadbe4/687474703a2f2f692e696d6775722e636f6d2f7a49416c4b62592e6a7067)

Add `INVISIBLE_RECAPTCHA_SITEKEY`, `INVISIBLE_RECAPTCHA_SECRETKEY` to **.env** file.

```
// required
INVISIBLE_RECAPTCHA_SITEKEY={siteKey}
INVISIBLE_RECAPTCHA_SECRETKEY={secretKey}

// optional
INVISIBLE_RECAPTCHA_BADGEHIDE=false
INVISIBLE_RECAPTCHA_DATABADGE='bottomright'
INVISIBLE_RECAPTCHA_TIMEOUT=5
INVISIBLE_RECAPTCHA_DEBUG=false

```

> There are three different captcha styles you can set: `bottomright`, `bottomleft`, `inline`

> If you set `INVISIBLE_RECAPTCHA_BADGEHIDE` to true, you can hide the badge logo.

> You can see the binding status of those catcha elements on browser console by setting `INVISIBLE_RECAPTCHA_DEBUG` as true.

### Usage

[](#usage)

Before you render the captcha, please keep those notices in mind:

- `render()` or `renderHTML()` function needs to be called within a form element.
- You have to ensure the `type` attribute of your submit button has to be `submit`.
- There can only be one submit button in your form.

##### Display reCAPTCHA in Your View

[](#display-recaptcha-in-your-view)

```
{!! app('captcha')->render() !!}

// or you can use this in blade
@captcha
```

With custom language support:

```
{!! app('captcha')->render('en') !!}

// or you can use this in blade
@captcha('en')
```

##### Usage with Javascript frameworks like VueJS:

[](#usage-with-javascript-frameworks-like-vuejs)

The `render()` process includes three distinct sections that can be rendered separately incase you're using the package with a framework like VueJS which throws console errors when `` tags are included in templates.

You can render the polyfill (do this somewhere like the head of your HTML:)

```
{!! app('captcha')->renderPolyfill() !!}
// Or with blade directive:
@captchaPolyfill
```

You can render the HTML using this following, this needs to be INSIDE your `` tag:

```
{!! app('captcha')->renderCaptchaHTML() !!}
// Or with blade directive:
@captchaHTML
```

And you can render the neccessary `` tags including the optional language support by using:

```
// The argument is optional.
{!! app('captcha')->renderFooterJS('en') !!}

// Or with blade directive:
@captchaScripts
// blade directive, with language support:
@captchaScripts('en')
```

##### Validation

[](#validation)

Add `'g-recaptcha-response' => 'required|captcha'` to rules array.

```
$validate = Validator::make(Input::all(), [
    'g-recaptcha-response' => 'required|captcha'
]);
```

Example Repository
------------------

[](#example-repository)

Repo:

This repo demonstrates how to use this package with ajax way.

###  Health Score

53

—

FairBetter than 97% of packages

Maintenance88

Actively maintained with recent releases

Popularity37

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 68.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~209 days

Total

4

Last Release

60d ago

Major Versions

1.0.0 → 2.0.02024-06-29

2.1.0 → 3.0.02026-03-19

PHP version history (3 changes)1.0.0PHP ^5.6.4 || ^7.0 || ^8.0

2.0.0PHP ^8.0

3.0.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/a91beab733af9a538e27dce750a4dbc1a3738d914b39dbb1f7c71475ff380109?d=identicon)[ultrono](/maintainers/ultrono)

---

Top Contributors

[![albertcht](https://avatars.githubusercontent.com/u/9117929?v=4)](https://github.com/albertcht "albertcht (97 commits)")[![danmatthews](https://avatars.githubusercontent.com/u/149426?v=4)](https://github.com/danmatthews "danmatthews (7 commits)")[![garbinmarcelo](https://avatars.githubusercontent.com/u/9335588?v=4)](https://github.com/garbinmarcelo "garbinmarcelo (4 commits)")[![AmiPraha](https://avatars.githubusercontent.com/u/77406341?v=4)](https://github.com/AmiPraha "AmiPraha (3 commits)")[![mikemand](https://avatars.githubusercontent.com/u/745184?v=4)](https://github.com/mikemand "mikemand (3 commits)")[![laravel-shift](https://avatars.githubusercontent.com/u/15991828?v=4)](https://github.com/laravel-shift "laravel-shift (2 commits)")[![jochensengier](https://avatars.githubusercontent.com/u/10118729?v=4)](https://github.com/jochensengier "jochensengier (2 commits)")[![Marko-M](https://avatars.githubusercontent.com/u/1738436?v=4)](https://github.com/Marko-M "Marko-M (2 commits)")[![mvasilyev](https://avatars.githubusercontent.com/u/4038111?v=4)](https://github.com/mvasilyev "mvasilyev (2 commits)")[![sumityadav](https://avatars.githubusercontent.com/u/169143?v=4)](https://github.com/sumityadav "sumityadav (2 commits)")[![ultrono](https://avatars.githubusercontent.com/u/1782734?v=4)](https://github.com/ultrono "ultrono (2 commits)")[![hedii](https://avatars.githubusercontent.com/u/5358048?v=4)](https://github.com/hedii "hedii (1 commits)")[![sald19](https://avatars.githubusercontent.com/u/1674971?v=4)](https://github.com/sald19 "sald19 (1 commits)")[![BrandonSurowiec](https://avatars.githubusercontent.com/u/5625680?v=4)](https://github.com/BrandonSurowiec "BrandonSurowiec (1 commits)")[![storyn26383](https://avatars.githubusercontent.com/u/6954098?v=4)](https://github.com/storyn26383 "storyn26383 (1 commits)")[![boblennes](https://avatars.githubusercontent.com/u/5143474?v=4)](https://github.com/boblennes "boblennes (1 commits)")[![yasiao](https://avatars.githubusercontent.com/u/9282137?v=4)](https://github.com/yasiao "yasiao (1 commits)")[![neamtua](https://avatars.githubusercontent.com/u/1029457?v=4)](https://github.com/neamtua "neamtua (1 commits)")[![QuentinBontemps](https://avatars.githubusercontent.com/u/4568504?v=4)](https://github.com/QuentinBontemps "QuentinBontemps (1 commits)")[![realanmup](https://avatars.githubusercontent.com/u/25292662?v=4)](https://github.com/realanmup "realanmup (1 commits)")

---

Tags

phplaravelrecaptchacaptchalaravel5invisibleno-captchainvisible-recaptcha

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/f9webltd-invisible-recaptcha/health.svg)

```
[![Health](https://phpackages.com/badges/f9webltd-invisible-recaptcha/health.svg)](https://phpackages.com/packages/f9webltd-invisible-recaptcha)
```

###  Alternatives

[albertcht/invisible-recaptcha

Invisible reCAPTCHA For Laravel.

6031.6M6](/packages/albertcht-invisible-recaptcha)[anhskohbo/no-captcha

No CAPTCHA reCAPTCHA For Laravel.

1.8k8.5M33](/packages/anhskohbo-no-captcha)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
