aryehraber/statamic-captcha
An addon for Statamic that adds CAPTCHA protection to forms, helping block spam and automated submissions. It offers simple configuration and server-side validation, making it easy to secure contact and other Statamic forms.
Architecture fit. aryehraber/statamic-captcha is a Statamic addon built on Laravel, so it fits a Laravel/Statamic stack natively: Composer-installed, auto-discovered service provider, published config, and a tag/validation-rule surface used directly in form templates. The relevant architectural signal in v1.18.0 is that adding a provider required only a new provider implementation plus registration — the package exposes a clean provider abstraction rather than hard-coding a single vendor. That is the right seam, and it means vendor choice is a configuration decision rather than an integration project.
Integration feasibility. Low effort. Typical path is composer require, publish config, set credentials in .env, select the provider, add the tag to the relevant form, and rely on the package for server-side verification. For an engineer already familiar with Statamic forms this is measured in hours, not days. Nothing in this release changes routes, middleware, or the config schema.
Technical risk. This release is additive and non-breaking: one new provider (FCaptcha) and one new contributor. There are no deprecations, no removals, and no security fix — so there is no urgency to upgrade, and no reason to block on it either.
Residual risks worth tracking:
Key questions.
Stack fit. Native. The package targets Statamic's form pipeline and Laravel's validation layer, so there is no adapter, shim, or bespoke glue to maintain. Credentials live in environment config, consistent with how we handle other third-party secrets.
Migration path. None required. Existing provider configuration continues to work unchanged; the only new surface is an additional selectable provider. The upgrade is a version bump on a branch, verified against the forms that already use CAPTCHA. Choosing FCaptcha is opt-in per environment and per form.
Compatibility. Pin the exact version, run the existing form submission tests, and confirm the current provider still renders and verifies after the bump. Treat FCaptcha adoption as a separate change from the version upgrade so that a regression can be attributed unambiguously.
Sequencing.
Do not bundle this upgrade with unrelated form or template changes.
Maintenance. Low. Composer-managed, semver-minor, no config migration, no data migration. The ongoing cost is release tracking — and specifically watching for major-version bumps that coincide with Statamic major upgrades, which is where this class of addon typically breaks.
Support. Open source, single maintainer, no commercial SLA. Mitigations: pin the version, keep the ability to vendor-patch or fork, and retain a documented fallback (Laravel's native validation rules or a direct provider SDK) if the package stalls. A one-provider integration is easy to replace; a sprawl of four providers is not.
Scaling. Each submission triggers an outbound verification call, adding roughly 100–300 ms of latency and coupling form throughput to the provider's rate limits and availability. Confirm limits against peak form volume (campaign launches, event registration spikes) before committing to any provider, and check whether the package caches or batches anything.
Failure modes.
Ramp-up. Low for engineers already working in Statamic. Adopting FCaptcha adds a modest increment: new dashboard, credential handling, and on-call familiarity with a second vendor's failure signature.
Recommendation. Upgrade to 1.18.0 as a routine, non-urgent maintenance step — it is additive and low risk. Do not enable FCaptcha absent a specific driver; if a driver exists, gate adoption behind a defined fail-mode policy and a single-form canary before any broader rollout.
How can I help you explore Laravel packages today?