PHPackages                             meldgaard/silverstripe-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. [Validation &amp; Sanitization](/categories/validation)
4. /
5. meldgaard/silverstripe-recaptcha

ActiveSilverstripe-vendormodule[Validation &amp; Sanitization](/categories/validation)

meldgaard/silverstripe-recaptcha
================================

Add recaptcha v3 to forms

1.1.0(2y ago)42.6k3MITPHP

Since Apr 4Pushed 2y ago4 watchersCompare

[ Source](https://github.com/CMeldgaard/Silverstripe-Recaptcha)[ Packagist](https://packagist.org/packages/meldgaard/silverstripe-recaptcha)[ RSS](/packages/meldgaard-silverstripe-recaptcha/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (9)Dependencies (1)Versions (10)Used By (0)

Silverstripe Recaptcha
======================

[](#silverstripe-recaptcha)

This module adds Google reCaptcha to SilverStripe 4.x, which you can use in your custom forms.

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

[](#installation)

`composer require meldgaard/silverstripe-recaptcha`

Usage
-----

[](#usage)

Put your keys and spamscore in your app/\_config/app.yml

```
Meldgaard\SilverStripe\ReCaptcha\Form\RecaptchaField:
  siteKey: 'Insert site key'
  secretKey: 'Insert secret key'
  spamLevel: 0-100
```

### Spamscore

[](#spamscore)

In config you set the spamscore to a value from 0 to 100. Recommended value to start is 50.

### Form setup

[](#form-setup)

Then you can use it in your forms, by using `RecaptchaForm` instead of `Form

```
public function HelloForm()
{
    $fields = new FieldList(
        TextField::create('Name', _t('HelloForm.Name', 'Name')),
        TextField::create('Email', _t('HelloForm.Email', 'E-Mail')),
        TextareaField::create('Message', _t('HelloForm.Message', 'Message')),
    );

    $actions = new FieldList(
        FormAction::create('doSayHello')->setTitle(_t('HelloForm.Submit', 'Send'))
    );

    $required = new RequiredFields('Name', 'Email', 'Message');

    $form = new RecaptchaForm($this, 'HelloForm', $fields, $actions, $required);

    return $form;
}
```

TODO
----

[](#todo)

- Update module to handle v2 of recaptcha
- Update module to give possibility to hide badge in v3

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 50% 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 ~197 days

Recently: every ~393 days

Total

9

Last Release

1062d ago

Major Versions

0.2.0 → 1.0.02019-10-20

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/10705999?v=4)[Meldgaard](/maintainers/Meldgaard)[@Meldgaard](https://github.com/Meldgaard)

---

Top Contributors

[![acndr](https://avatars.githubusercontent.com/u/4443653?v=4)](https://github.com/acndr "acndr (2 commits)")[![CMeldgaard](https://avatars.githubusercontent.com/u/14794642?v=4)](https://github.com/CMeldgaard "CMeldgaard (1 commits)")[![sunnysideup](https://avatars.githubusercontent.com/u/167154?v=4)](https://github.com/sunnysideup "sunnysideup (1 commits)")

---

Tags

googlesilverstriperecaptchav3version 3

### Embed Badge

![Health badge](/badges/meldgaard-silverstripe-recaptcha/health.svg)

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

###  Alternatives

[karser/karser-recaptcha3-bundle

Google ReCAPTCHA v3 for Symfony

1862.5M9](/packages/karser-karser-recaptcha3-bundle)[undefinedoffset/silverstripe-nocaptcha

A spam protector and form field using Google's reCAPTCHA v2 or optionally a foundation v3 implementation

31485.4k20](/packages/undefinedoffset-silverstripe-nocaptcha)[abanoubnassem/filament-grecaptcha-field

Provides a Google reCaptcha V2 field for the Filament Forms

26126.1k2](/packages/abanoubnassem-filament-grecaptcha-field)[sheadawson/silverstripe-zenvalidator

Faster, easier client and server-side form validation for SilverStripe

5680.5k2](/packages/sheadawson-silverstripe-zenvalidator)

PHPackages © 2026

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