PHPackages                             networkteam/neos-mailobfuscator - 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. [Mail &amp; Notifications](/categories/mail)
4. /
5. networkteam/neos-mailobfuscator

ActiveNeos-plugin[Mail &amp; Notifications](/categories/mail)

networkteam/neos-mailobfuscator
===============================

A email address and link obfuscation plugin for Neos CMS

4.0.0(1y ago)14113.5k↓68.5%13[2 issues](https://github.com/networkteam/Networkteam.Neos.MailObfuscator/issues)GPL-2.0-or-laterPHPPHP &gt;=8.2CI failing

Since Sep 3Pushed 11mo ago8 watchersCompare

[ Source](https://github.com/networkteam/Networkteam.Neos.MailObfuscator)[ Packagist](https://packagist.org/packages/networkteam/neos-mailobfuscator)[ RSS](/packages/networkteam-neos-mailobfuscator/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (10)Dependencies (3)Versions (31)Used By (0)

Neos MailObfuscator
===================

[](#neos-mailobfuscator)

In order to make life for spammers more difficult, this package provides an obfuscation of email addresses. The email address is obfuscated by a rot13 like algorithm with random offsets.

When the link is clicked, the email address is unobfuscated by the same algorithm in JavaScript:

```
foo@example.com
```

will become

```
foo (at) example.com
```

The replacement is done in 2 steps, thus it is possible to have a link label that is different from the email address:

```
Contact us
```

will become

```
Contact us
```

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

[](#installation)

Install the composer package in your site package or distribution:

```
$ composer require networkteam/neos-mailobfuscator
```

There is no need for configuration, as a Fusion processor is attached to `body` of `Neos.Neos:Page`. That means, that the complete content of body tag is obfuscated.

### Compatibility

[](#compatibility)

See the following table for the correct plugin version to choose:

Neos CMSPlugin version&gt;= 9.04.x&gt;= 3.02.x, 3.x&lt; 3.01.xConfiguration
-------------

[](#configuration)

Obfuscation can be disabled for specific node types by unsetting the processor:

```
prototype(Neos.Neos:Page) {
    @process.networkteamNeosMailObfuscator >
}

```

The JavaScript include can be disabled for custom minification:

```
prototype(Neos.Neos:Page) {
    networkteamNeosMailObfuscator >
}

```

The replacement string for the at-sign (@) can be configured. It will be inserted as HTML without escaping, so it's possible to replace it with something like an image:

```
# Settings.yaml
Networkteam:
  Neos:
    MailObfuscator:
      atCharReplacementString: ''
```

EEL Helpers
-----------

[](#eel-helpers)

There are Eel helpers available to use MailObfuscator functions in Fusion

```
// Convert @ Character
${Networkteam.Neos.MailObfuscator.convertAtChar('foo@example.com')}
// returns: foo (at) example.com

```

```
// Convert Mail to Href
${Networkteam.Neos.MailObfuscator.convertMailto2Href('foo@example.com')}
// returns javascript:linkTo_UnCryptMailto('obfuscatedEmail', -randomNumber)

```

Acknowledgments
---------------

[](#acknowledgments)

Original email address obfuscation code by [TYPO3 CMS](http://www.typo3.org).

Development sponsored by [networkteam GmbH - Neos Agentur](https://networkteam.com/fokus/neos-cms.html).

License
-------

[](#license)

Licensed under GPLv2+, see [LICENSE](LICENSE).

###  Health Score

53

—

FairBetter than 96% of packages

Maintenance45

Moderate activity, may be stable

Popularity42

Moderate usage in the ecosystem

Community25

Small or concentrated contributor base

Maturity86

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 60.9% 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 ~173 days

Recently: every ~69 days

Total

24

Last Release

332d ago

Major Versions

1.0.3 → 2.0.02017-02-02

1.0.x-dev → v2.2.02018-07-11

2.4.0 → 3.0.02019-11-29

3.3.3 → 4.0.02025-04-03

PHP version history (3 changes)2.0.0PHP &gt;=7.0

3.2.0PHP &gt;=7.1

4.0.0PHP &gt;=8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/790179df9a15d9175b9ec8fdc2df5c4c660a52a4fb6d429376cf66b66b0a595c?d=identicon)[chlu](/maintainers/chlu)

![](https://www.gravatar.com/avatar/7cbf52f8dce27737b73b79ac2c958434339f3dcf704b17a040956ed9a33eb4ef?d=identicon)[networkteam](/maintainers/networkteam)

---

Top Contributors

[![ComiR](https://avatars.githubusercontent.com/u/11410095?v=4)](https://github.com/ComiR "ComiR (70 commits)")[![Sebobo](https://avatars.githubusercontent.com/u/596967?v=4)](https://github.com/Sebobo "Sebobo (10 commits)")[![hlubek](https://avatars.githubusercontent.com/u/33351?v=4)](https://github.com/hlubek "hlubek (8 commits)")[![paavo](https://avatars.githubusercontent.com/u/1118783?v=4)](https://github.com/paavo "paavo (6 commits)")[![monofone](https://avatars.githubusercontent.com/u/373163?v=4)](https://github.com/monofone "monofone (5 commits)")[![dlubitz](https://avatars.githubusercontent.com/u/13046100?v=4)](https://github.com/dlubitz "dlubitz (3 commits)")[![suffle](https://avatars.githubusercontent.com/u/10942229?v=4)](https://github.com/suffle "suffle (2 commits)")[![networkteamcom](https://avatars.githubusercontent.com/u/31891264?v=4)](https://github.com/networkteamcom "networkteamcom (2 commits)")[![nilsjung](https://avatars.githubusercontent.com/u/24273394?v=4)](https://github.com/nilsjung "nilsjung (2 commits)")[![Benjamin-K](https://avatars.githubusercontent.com/u/3098031?v=4)](https://github.com/Benjamin-K "Benjamin-K (2 commits)")[![signalwerk](https://avatars.githubusercontent.com/u/992878?v=4)](https://github.com/signalwerk "signalwerk (1 commits)")[![jobee](https://avatars.githubusercontent.com/u/5636715?v=4)](https://github.com/jobee "jobee (1 commits)")[![jrenggli](https://avatars.githubusercontent.com/u/743094?v=4)](https://github.com/jrenggli "jrenggli (1 commits)")[![esdete2](https://avatars.githubusercontent.com/u/34043608?v=4)](https://github.com/esdete2 "esdete2 (1 commits)")[![networkteam-lange](https://avatars.githubusercontent.com/u/19548950?v=4)](https://github.com/networkteam-lange "networkteam-lange (1 commits)")

---

Tags

emailneoscmsobfuscationplugin

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/networkteam-neos-mailobfuscator/health.svg)

```
[![Health](https://phpackages.com/badges/networkteam-neos-mailobfuscator/health.svg)](https://phpackages.com/packages/networkteam-neos-mailobfuscator)
```

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.3k543.5M2.6k](/packages/aws-aws-sdk-php)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M46](/packages/tencentcloud-tencentcloud-sdk-php)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[guanguans/notify

Push notification SDK(AnPush、Bark、Chanify、DingTalk、Discord、Gitter、GoogleChat、IGot、Lark、Mattermost、MicrosoftTeams、NotifyX、NowPush、Ntfy、Push、Pushback、PushBullet、PushDeer、PushMe、Pushover、PushPlus、QQ、RocketChat、ServerChan、ShowdocPush、SimplePush、Slack、Telegram、WeWork、WPush、XiZhi、YiFengChuanHua、ZohoCliq、ZohoCliqWebHook、Zulip).

687114.3k8](/packages/guanguans-notify)[erag/laravel-disposable-email

A Laravel package to detect and block disposable email addresses.

254168.5k](/packages/erag-laravel-disposable-email)

PHPackages © 2026

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