PHPackages                             mindfulmarkup/mindfula11y - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. mindfulmarkup/mindfula11y

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

mindfulmarkup/mindfula11y
=========================

Find and fix accessibility issues directly in the TYPO3 backend: a remediation module with missing alt-text detection and AI generation (OpenAI), accessibility fields and Fluid ViewHelpers for semantic headings and landmarks, plus optional axe-core page scanning.

v0.11.1(5d ago)4343GPL-2.0-or-laterPHPPHP &gt;=8.2 &lt;=8.4

Since May 30Pushed 2w agoCompare

[ Source](https://github.com/crinis/mindfula11y)[ Packagist](https://packagist.org/packages/mindfulmarkup/mindfula11y)[ RSS](/packages/mindfulmarkup-mindfula11y/feed)WikiDiscussions main Synced today

READMEChangelog (10)Dependencies (16)Versions (22)Used By (0)

Mindful A11y for TYPO3
======================

[](#mindful-a11y-for-typo3)

Mindful A11y helps editors and integrators find and fix common accessibility issues directly in the TYPO3 backend.

What the extension includes
---------------------------

[](#what-the-extension-includes)

- **Accessibility backend module** with:
    - **General**: heading and landmark structure overview with issue hints.
    - **Missing alternative text**: list, filter, and edit image/file references without alt text.
    - **Scanner (optional)**: run scans, review findings, and export HTML/PDF reports for single or multiple pages or crawls of the entire page tree.
- **Optional AI alt text generation** via OpenAI for missing image alt text.
- **Accessibility fields for content elements** (heading type, landmark, ARIA labels).
- **Fluid ViewHelpers** for accessible heading and landmark rendering and integration with the backend module.
- **Page module info box** with quick accessibility status and links.
- **CLI cleanup command** to cleanup outdated scan results.

Scanner functionality uses the external [MindfulAPI](https://github.com/crinis/mindfulapi) project and is **required** for scanner features. MindfulAPI runs axe-core based technical scans in a headless browser environment. These automated checks are reliable for technical violations but only cover a subset of accessibility issues.

Scanner features are available only when **both** requirements are met:

- MindfulAPI is installed and reachable from TYPO3
- Page TSconfig sets `mod.mindfula11y_accessibility.scan.enable = 1` (default is `0`)

[![Accessibility module overview in TYPO3 backend with feature selector menu and status callouts for missing alt text, structure checks, and scanner issues](Documentation/Images/readme-accessibility-module-overview.png)](Documentation/Images/readme-accessibility-module-overview.png)[![Missing alternative text workflow showing preview, editable field, generate action, and save action](Documentation/Images/readme-missing-alt-text-workflow.png)](Documentation/Images/readme-missing-alt-text-workflow.png)[![Scanner results panel showing issue severity badges, selector and context details, and HTML/PDF report buttons](Documentation/Images/readme-scanner-results.png)](Documentation/Images/readme-scanner-results.png)

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

[](#requirements)

- TYPO3 `13.4.x LTS` or `14.3.x LTS`
- PHP `8.2` to `8.4`

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

[](#installation)

```
composer require mindfulmarkup/mindfula11y
```

Basic setup
-----------

[](#basic-setup)

1. Install and enable the extension in TYPO3.
2. In **Admin Tools → Settings → Extension Configuration**, set:
    - OpenAI key/model (only if you want AI alt text generation)
    - Scanner API URL/token (only if you want scanner results), for example `http://localhost:3000` or `https://scanner.example.com`
    - For scanner support: set up [MindfulAPI](https://github.com/crinis/mindfulapi) with Docker first
3. Enable or disable module sections via Page TSconfig:
    - `mod.mindfula11y_accessibility.missingAltText.enable`
    - `mod.mindfula11y_accessibility.headingStructure.enable`
    - `mod.mindfula11y_accessibility.landmarkStructure.enable`
    - `mod.mindfula11y_accessibility.scan.enable = 1` to use scanner features (off by default)

Full documentation
------------------

[](#full-documentation)

See `Documentation/Index.md` for complete docs with separate guides for editors, integrators, and developers.

- Editors: `Documentation/Editors/Index.md`
- Integrators: `Documentation/Integrators/Index.md`
- Developers: `Documentation/Developers/Index.md`

License
-------

[](#license)

GPL-2.0-or-later

###  Health Score

47

—

FairBetter than 93% of packages

Maintenance98

Actively maintained with recent releases

Popularity19

Limited adoption so far

Community6

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

Recently: every ~31 days

Total

18

Last Release

5d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/71df8106ceebb6b342c74fde1f434bbdc807a7e2257a93eb0ad7b99c352016ed?d=identicon)[mindfulmarkup](/maintainers/mindfulmarkup)

---

Top Contributors

[![crinis](https://avatars.githubusercontent.com/u/6907942?v=4)](https://github.com/crinis "crinis (118 commits)")

---

Tags

accessibilitytypo3typo3-extensionextensionaccessibilitytypo3wcagARIAChatGptbackend-moduleAI Generationalt texta11yscreen readerheadingslandmarkssemantic HTML

### Embed Badge

![Health badge](/badges/mindfulmarkup-mindfula11y/health.svg)

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

###  Alternatives

[friendsoftypo3/content-blocks

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

103519.9k53](/packages/friendsoftypo3-content-blocks)[pagemachine/typo3-formlog

Form log for TYPO3

23238.6k8](/packages/pagemachine-typo3-formlog)[eliashaeussler/typo3-form-consent

Extension for TYPO3 CMS that adds double opt-in functionality to EXT:form

1595.5k](/packages/eliashaeussler-typo3-form-consent)[georgringer/news

News system - Versatile news system based on Extbase &amp; Fluid and using the latest technologies provided by TYPO3 CMS.

2985.3M124](/packages/georgringer-news)[yoast-seo-for-typo3/yoast_seo

Yoast SEO for TYPO3

511.7M9](/packages/yoast-seo-for-typo3-yoast-seo)[netresearch/rte-ckeditor-image

Image support in CKEditor for the TYPO3 ecosystem - by Netresearch

611.1M8](/packages/netresearch-rte-ckeditor-image)

PHPackages © 2026

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