PHPackages                             contributte/wordcha - 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. contributte/wordcha

Abandoned → [contributte/forms](/?search=contributte%2Fforms)ArchivedLibrary[Security](/categories/security)

contributte/wordcha
===================

Question-based captcha for Nette Forms

v0.4.0(2y ago)2616.9k2MITPHPPHP &gt;=8.1

Since Jun 11Pushed 4mo ago2 watchersCompare

[ Source](https://github.com/contributte/wordcha)[ Packagist](https://packagist.org/packages/contributte/wordcha)[ Docs](https://github.com/contributte/wordcha)[ Fund](https://contributte.org/partners.html)[ GitHub Sponsors](https://github.com/f3l1x)[ RSS](/packages/contributte-wordcha/feed)WikiDiscussions master Synced 2mo ago

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

[![](https://camo.githubusercontent.com/62085efe5092d849da8e170fcc520bb6904a7298e580a0778f95cae4b1406c77/68747470733a2f2f686561746261646765722e6e6f772e73682f6769746875622f726561646d652f636f6e74726962757474652f776f72646368612f3f646570726563617465643d31)](https://camo.githubusercontent.com/62085efe5092d849da8e170fcc520bb6904a7298e580a0778f95cae4b1406c77/68747470733a2f2f686561746261646765722e6e6f772e73682f6769746875622f726561646d652f636f6e74726962757474652f776f72646368612f3f646570726563617465643d31)

 [![](https://camo.githubusercontent.com/a8b1cd856d7d396fdebbe46947cc3507490acc267a02361e5e53bb7b820c95c3/68747470733a2f2f62616467656e2e6e65742f62616467652f737570706f72742f6769747465722f6379616e)](https://bit.ly/ctteg) [![](https://camo.githubusercontent.com/86d6416fc04f8bcc3daa7bf881526b9953b9726b1164d05c157c8713e3a73418/68747470733a2f2f62616467656e2e6e65742f62616467652f737570706f72742f666f72756d2f79656c6c6f77)](https://bit.ly/cttfo) [![](https://camo.githubusercontent.com/5d170ab94e6d594609561e16fe0f9e4293968fbd4dfcfafc5e11efc1415ef09c/68747470733a2f2f62616467656e2e6e65742f62616467652f73706f6e736f722f646f6e6174696f6e732f463936383534)](https://contributte.org/partners.html)

 Website 🚀 [contributte.org](https://contributte.org) | Contact 👨🏻‍💻 [f3l1x.io](https://f3l1x.io) | Twitter 🐦 [@contributte](https://twitter.com/contributte)

Disclaimer
----------

[](#disclaimer)

⚠️This project is no longer being maintained.Composer[`contributte/wordcha`](https://packagist.org/packages/contributte/wordcha)Version[![](https://camo.githubusercontent.com/74551e2b1e85789397782ad3810762277873d05d270b72fa8173f8ed7635bd2d/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f762f636f6e74726962757474652f776f7264636861)](https://camo.githubusercontent.com/74551e2b1e85789397782ad3810762277873d05d270b72fa8173f8ed7635bd2d/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f762f636f6e74726962757474652f776f7264636861)PHP[![](https://camo.githubusercontent.com/1772653adac36e03381380aa15c8169bc10e77f00768cd63e2100be075f24a52/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f7068702f636f6e74726962757474652f776f7264636861)](https://camo.githubusercontent.com/1772653adac36e03381380aa15c8169bc10e77f00768cd63e2100be075f24a52/68747470733a2f2f62616467656e2e6e65742f7061636b61676973742f7068702f636f6e74726962757474652f776f7264636861)License[![](https://camo.githubusercontent.com/dea2a27e8757fa7d50dec0004b7eea70bd0198b99a73d4d0d89f6f04400dfee7/68747470733a2f2f62616467656e2e6e65742f6769746875622f6c6963656e73652f636f6e74726962757474652f776f7264636861)](https://camo.githubusercontent.com/dea2a27e8757fa7d50dec0004b7eea70bd0198b99a73d4d0d89f6f04400dfee7/68747470733a2f2f62616467656e2e6e65742f6769746875622f6c6963656e73652f636f6e74726962757474652f776f7264636861)About
-----

[](#about)

Question-based captcha for Nette Framework / Forms.

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

[](#installation)

```
composer require contributte/wordcha
```

Register extension:

```
extensions:
    wordcha: Contributte\Wordcha\DI\WordchaExtension
```

Configuration
-------------

[](#configuration)

At the beginning you should pick the right datasource.

### Numeric datasource

[](#numeric-datasource)

```
wordcha:
    datasource: numeric
```

### Question datasource

[](#question-datasource)

```
wordcha:
    datasource: questions
    questions:
        "Question a?": "a"
        "Question b?": "b"
```

Usage
-----

[](#usage)

```
use Nette\Application\UI\Form;

protected function createComponentForm()
{
    $form = new Form();

    $form->addWordcha('wordcha')
        ->getQuestion()
        ->setRequired('Please answer antispam question');

    $form->addSubmit('send');

    $form->onValidate[] = function (Form $form) {
        if ($form['wordcha']->verify() !== TRUE) {
            $form->addError('Are you robot?');
        }
    };

    $form->onSuccess[] = function (Form $form) {
        dump($form['wordcha']);
    };

    return $form;
}
```

Example
-------

[](#example)

[![captcha](https://raw.githubusercontent.com/contributte/wordcha/master/.docs/wordcha.png)](https://raw.githubusercontent.com/contributte/wordcha/master/.docs/wordcha.png)

Versions
--------

[](#versions)

StateVersionBranchPHPdev`^0.5``master``>=8.1`stable`^0.4``master``>=8.1`Development
-----------

[](#development)

This package was maintained by these authors.

[ ![](https://avatars2.githubusercontent.com/u/538058?v=3&s=80)](https://github.com/f3l1x)---

Consider to [support](https://contributte.org/partners.html) **contributte** development team. Also thank you for using this package.

###  Health Score

45

—

FairBetter than 93% of packages

Maintenance51

Moderate activity, may be stable

Popularity34

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 63.6% 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 ~782 days

Total

4

Last Release

915d ago

PHP version history (4 changes)v0.1PHP &gt;= 5.6

v0.2.0PHP ^7.2

v0.3.0PHP &gt;=7.2

v0.4.0PHP &gt;=8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/538058?v=4)[Milan Šulc](/maintainers/f3l1x)[@f3l1x](https://github.com/f3l1x)

---

Top Contributors

[![f3l1x](https://avatars.githubusercontent.com/u/538058?v=4)](https://github.com/f3l1x "f3l1x (35 commits)")[![josefbenjac](https://avatars.githubusercontent.com/u/6731626?v=4)](https://github.com/josefbenjac "josefbenjac (10 commits)")[![mabar](https://avatars.githubusercontent.com/u/20974277?v=4)](https://github.com/mabar "mabar (5 commits)")[![petrparolek](https://avatars.githubusercontent.com/u/6066243?v=4)](https://github.com/petrparolek "petrparolek (5 commits)")

---

Tags

captchacontributtenettenette-frameworksecurityword-basednettesecuritycaptchaForms

### Embed Badge

![Health badge](/badges/contributte-wordcha/health.svg)

```
[![Health](https://phpackages.com/badges/contributte-wordcha/health.svg)](https://phpackages.com/packages/contributte-wordcha)
```

###  Alternatives

[contributte/recaptcha

Google reCAPTCHA for Nette - Forms

421.3M4](/packages/contributte-recaptcha)[uestla/recaptcha-control

reCAPTCHA control for Nette Framework forms

26572.0k1](/packages/uestla-recaptcha-control)[nepada/security-annotations

Security annotations for Nette presenters and components.

1113.3k1](/packages/nepada-security-annotations)

PHPackages © 2026

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