PHPackages                             innoweb/silverstripe-spamprotection-honeypot - 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. [Security](/categories/security)
4. /
5. innoweb/silverstripe-spamprotection-honeypot

ActiveSilverstripe-vendormodule[Security](/categories/security)

innoweb/silverstripe-spamprotection-honeypot
============================================

Provides invisible honeypot spam protection for Silverstripe CMS.

3.0.0(7mo ago)03.2k↓33.3%BSD-3-ClausePHP

Since Feb 3Pushed 7mo ago2 watchersCompare

[ Source](https://github.com/xini/silverstripe-spamprotection-honeypot)[ Packagist](https://packagist.org/packages/innoweb/silverstripe-spamprotection-honeypot)[ Docs](https://github.com/xini/silverstripe-spamprotection-honeypot)[ RSS](/packages/innoweb-silverstripe-spamprotection-honeypot/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (3)Versions (8)Used By (0)

Silverstripe Honeypot SpamProtection Module
===========================================

[](#silverstripe-honeypot-spamprotection-module)

[![Version](https://camo.githubusercontent.com/fd8aa054692938757837cb28a9632c21c6de8913057591126d9512f69b6dac18/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f696e6e6f7765622f73696c7665727374726970652d7370616d70726f74656374696f6e2d686f6e6579706f742e7376673f636f6c6f723d6461726b6f72616e6765267374796c653d666c61742d737175617265)](https://packagist.org/packages/innoweb/silverstripe-spamprotection-honeypot)[![Silverstripe](https://camo.githubusercontent.com/85e528b6a694c264a1da75a581260b404f4bbca69d4bdf74e058a2c81992de66/68747470733a2f2f696d672e736869656c64732e696f2f7374617469632f76313f6c6162656c3d53696c766572737472697065266d6573736167653d253545342e313026636f6c6f723d626c7565267374796c653d666c61742d737175617265)](composer.json)[![Downloads](https://camo.githubusercontent.com/59cf063c715ede92fb409ea07f4fae081cc41d01dcd916252fd71a1700c65bf8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f696e6e6f7765622f73696c7665727374726970652d7370616d70726f74656374696f6e2d686f6e6579706f743f636f6c6f723d6c69676874736561677265656e267374796c653d666c61742d737175617265)](https://packagist.org/packages/innoweb/silverstripe-spamprotection-honeypot)[![Issues](https://camo.githubusercontent.com/abc28c1dca95b653e059d42ffe084796160c645cb33cda3f7dfecf01fc24f408/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732d7261772f78696e692f73696c7665727374726970652d7370616d70726f74656374696f6e2d686f6e6579706f743f636f6c6f723d6461726b726564267374796c653d666c61742d737175617265)](https://github.com/xini/silverstripe-spamprotection-honeypot/issues)[![License](https://camo.githubusercontent.com/7726f135f66cc060a81de98052e347833ea9471fe956ac30646a00a2342935aa/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f696e6e6f7765622f73696c7665727374726970652d7370616d70726f74656374696f6e2d686f6e6579706f742e7376673f7374796c653d666c61742d737175617265)](license.md)

Overview
--------

[](#overview)

Provides invisible honeypot spam protection for Silverstripe CMS.

Creates form fields hidden from users that invalidate submission if the contained data has been tampered with. Also invalidates submissions that respond too quickly.

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

[](#requirements)

- Silverstripe Framework 6
- Silverstripe [SpamProtection](https://github.com/silverstripe/silverstripe-spamprotection) 5

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

[](#installation)

Run the following to add this module as a requirement and install it via composer.

```
$ composer require innoweb/silverstripe-spamprotection-honeypot
```

Then run dev/build.

Usage
-----

[](#usage)

Create a configuration file `spamprotection.yml` in `app/_config` with the following configuration:

```
---
Name: app-spamprotection
---
SilverStripe\SpamProtection\Extension\FormSpamProtectionExtension:
  default_spam_protector: Innoweb\SpamProtectionHoneypot\SpamProtector\HoneypotSpamProtector
```

We also recommend changing the default field name from `Captcha` to something less obvious:

```
SilverStripe\SpamProtection\Extension\FormSpamProtectionExtension:
  field_name: 'AdditionalInformation'
```

Then enable spam protection on your form by calling `Form::enableSpamProtection()`.

```
public function ExampleForm()
{
    $form = new ExampleForm($this, 'Example');

    $form->enableSpamProtection();

    return $form;
}
```

You can change the amount time that is checked to see if the response is made too quickly with the following configuration.

```
Innoweb\SpamProtectionHoneypot\FormField\HoneypotField:
  time_limit: 12
```

This example changes the time to 12 seconds. The default is set to 8 seconds.

You can also change the default text used in the value field, overriding the translation using your lang file (e.g. `app/lang/en.yml`):

```
en:
  Innoweb\SpamProtectionHoneypot\FormField\HoneypotField:
    DefaultValue: 'Some text that should not be touched.'
```

This defaults to `'Please leave this as is.'`.

Contributing
------------

[](#contributing)

Please see [contributing](contributing.md) for details.

Credits
-------

[](#credits)

Thanks to [studiobonito/silverstripe-spamprotection-honeypot](https://github.com/studiobonito/silverstripe-spamprotection-honeypot) and [symbiote-library/silverstripe-spamprotection-honeypot](https://github.com/symbiote-library/silverstripe-spamprotection-honeypot) for the inspirations.

License
-------

[](#license)

BSD 3-Clause License, see [License](license.md)

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance62

Regular maintenance activity

Popularity21

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~221 days

Recently: every ~230 days

Total

7

Last Release

237d ago

Major Versions

1.x-dev → 2.0.02023-03-16

2.x-dev → 3.0.02025-09-23

### Community

Maintainers

![](https://www.gravatar.com/avatar/0d2e71d7787401a7bd4916062346163897f89f455d650ab32b5d60cd14825ad3?d=identicon)[xini](/maintainers/xini)

---

Top Contributors

[![xini](https://avatars.githubusercontent.com/u/1152403?v=4)](https://github.com/xini "xini (13 commits)")

---

Tags

silverstripespamformHoneypotprotection

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/innoweb-silverstripe-spamprotection-honeypot/health.svg)

```
[![Health](https://phpackages.com/badges/innoweb-silverstripe-spamprotection-honeypot/health.svg)](https://phpackages.com/packages/innoweb-silverstripe-spamprotection-honeypot)
```

###  Alternatives

[msurguy/honeypot

Honeypot spam prevention

4381.2M12](/packages/msurguy-honeypot)[exadium/silverstripe-invisible-spam-protection

Very simple anti spam protection based on principle that automated spammers enter bogus information in all form fields. Field is added to form that is hidden using CSS hiding it from human users. Form is only allowed to be submitted if field is empty. Includes an EditableInvisibleSpamField to integrate with the UserForms module.

112.1k](/packages/exadium-silverstripe-invisible-spam-protection)

PHPackages © 2026

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