PHPackages                             idleworks/form-badwords - 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. idleworks/form-badwords

ActiveTypo3-cms-extension[Validation &amp; Sanitization](/categories/validation)

idleworks/form-badwords
=======================

Form: Badwords validator

1.0.1(6mo ago)01.4kGPL-2.0-or-laterPHPPHP ^8.0

Since Jul 29Pushed 6mo agoCompare

[ Source](https://github.com/idleworks/form-badwords)[ Packagist](https://packagist.org/packages/idleworks/form-badwords)[ RSS](/packages/idleworks-form-badwords/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (1)Dependencies (1)Versions (4)Used By (0)

EXT:form badwords validator
===========================

[](#extform-badwords-validator)

Adds a validator to TYPO3's form framework that checks user input against a list of bad words. An example list is bundled with this package, but it can be customized as needed.

This feature was originally developed to detect bad words submitted through contact forms. However, it can also be used to block certain email addresses, domain parts (e.g., junk mail providers), or known disruptive users.

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

[](#installation)

`composer require idleworks/form-badwords`

The required TypoScript is automatically included in your setup.

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

[](#configuration)

### Add the validator to form fields

[](#add-the-validator-to-form-fields)

Each form field you want to validate must be equipped with the new Badwords validator. You can configure this in the Form Manager within the TYPO3 backend.

### Customize badwords file

[](#customize-badwords-file)

This extension comes with an example bad words list. You can customize it to suit your specific needs. To do this, update the path to the badwords file in the extension configuration using the Install Tool.

> Important:
>
> If you place the badwords file in a publicly accessible directory (e.g., fileadmin), it may be indexed by search engines — which is likely not desirable. Therefore, make sure to protect the file using an .htaccess rule or equivalent server configuration.

You can use regular expressions to tune your badwords list. Comments starting with a hash (#) are also possible and are excluded from processing.

#### Examples

[](#examples)

```
# Matches word parts (e.g. "send nudes")
nude
# Matches only the word "nude"
\b(nude)\b
# Matches all email address of mailinator.com
@mailinator\.com$

```

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance66

Regular maintenance activity

Popularity20

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity44

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 ~177 days

Total

2

Last Release

207d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6685173?v=4)[Philipp Idler](/maintainers/Idleworks)[@idleworks](https://github.com/idleworks)

---

Top Contributors

[![idleworks](https://avatars.githubusercontent.com/u/6685173?v=4)](https://github.com/idleworks "idleworks (10 commits)")

### Embed Badge

![Health badge](/badges/idleworks-form-badwords/health.svg)

```
[![Health](https://phpackages.com/badges/idleworks-form-badwords/health.svg)](https://phpackages.com/packages/idleworks-form-badwords)
```

###  Alternatives

[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

103574.3k69](/packages/friendsoftypo3-content-blocks)[plan2net/webp

Drop-in WebP, AVIF, and JPEG XL delivery for TYPO3 images — automatic, no URL or template changes

661.6M6](/packages/plan2net-webp)[wazum/sluggi

TYPO3 extension for URL slug management with inline editing, auto-sync, locking, access control, and redirects

40543.5k](/packages/wazum-sluggi)[netresearch/rte-ckeditor-image

Image support in CKEditor for the TYPO3 ecosystem - by Netresearch

631.1M8](/packages/netresearch-rte-ckeditor-image)[typo3/cms-info

TYPO3 CMS Info - TYPO3 backend module for displaying information, such as a pagetree overview and localization information.

169.3M164](/packages/typo3-cms-info)[typo3/cms-redirects

TYPO3 CMS Redirects - Create manual redirects, list existing redirects and automatically createredirects on slug changes.

167.6M84](/packages/typo3-cms-redirects)

PHPackages © 2026

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