PHPackages                             remind/typo3-headless - 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. remind/typo3-headless

Abandoned → [remind/headless](/?search=remind%2Fheadless)Typo3-cms-extension

remind/typo3-headless
=====================

REMIND - Headless

v5.0.1(2mo ago)1971GPL-3.0-or-laterPHPPHP ^8CI passing

Since Feb 24Pushed 2mo agoCompare

[ Source](https://github.com/remindgmbh/headless)[ Packagist](https://packagist.org/packages/remind/typo3-headless)[ RSS](/packages/remind-typo3-headless/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (10)Versions (20)Used By (0)

REMIND - Headless Extension
===========================

[](#remind---headless-extension)

This extension provides:

- base content elements
- additional fields for pages and tt\_content (e.g. items)
- extended flex form processor
- image processing middleware
- base configuration for form\_framework
- a default backend layout

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

[](#installation)

Use comoser to install the extension using `composer install remind/headless`. Import typoscript in your provider extension.

Add the following to your site config:

```
headless: 1
```

Dependencies
------------

[](#dependencies)

Required dependencies are [headless](https://github.com/TYPO3-Headless/headless) and [content-defender](https://github.com/IchHabRecht/content_defender). The latter is used in the default backend layout.

Backend Layouts
---------------

[](#backend-layouts)

### Default

[](#default)

The default layout consists of 1 column with 2 rows. Besides the main content (colPos = 0) there is also one column for content above the breadcrumbs (colPos = 1).

TCA
---

[](#tca)

### tt\_content

[](#tt_content)

#### tx\_headless\_item

[](#tx_headless_item)

Field of type inline. Basically `tx_headless_item` acts like tt\_content without a `colPos`. Used for `accordion` and `tabs`. See one of these definition on how to use items and override the showitem definition. Nested items are possible as well, however flexform only work for top level items for now.

To add a flexform to an item add the following configuration to `TCA/Overrides/tx_headless_item.php`:

`$GLOBALS['TCA']['tx_headless_item']['columns']['flexform']['config']['ds'][''] = '';`

The `flexform` column has to be added to `showitem` of the respective tt\_content type as well. For example, to add a flexform to the accordion type the following must contain the flexform column:

`$GLOBALS['TCA']['tt_content']['types']['accordion']['columnsOverrides']['tx_headless_item']['config']['overrideChildTca']['types']['0']['showitem']`

To ouput the flexform data in the frontend, the flexform field has to be added to the content elements typoscript. Example for modified `Accordion.typoscript`:

```
lib.accordionItems =< lib.items
lib.accordionItems {
    dataProcessing {
        10 {
            fields {
                flexform {
                    dataProcessing {
                        10 = Remind\Headless\DataProcessing\FlexFormProcessor
                        10 {
                            fieldName = flexform
                            as = flexform
                        }
                    }
                }
            }
        }
    }
}

tt_content.accordion =< lib.contentElementWithHeader
tt_content.accordion {
    fields {
        content {
            fields {
                items =< lib.accordionItems
            }
        }
    }
}

```

#### header\_layout

[](#header_layout)

Values for text, H1-H6 and hidden.

#### tx\_headless\_background\_color

[](#tx_headless_background_color)

A background color for all content elements. Only option `none` exists per default. Add options per content element by using `columnOverrides`:

```
    'columnsOverrides' => [
        'tx_headless_background_color' => [
            'config' => [
                'items' => [
                    1 => [
                        'label' => 'Custom Color',
                        'value' => 'custom',
                    ],
                ],
            ],
        ],
    ],
```

#### tx\_headless\_background\_full\_width

[](#tx_headless_background_full_width)

Only visible if `tx_headless_background_color` is other than `none`. Used to extend the background color to full width instead of the content container only.

#### tx\_headless\_space\_before\_inside

[](#tx_headless_space_before_inside)

Addition to `space_before`. Space before the content element, but inside the background color. Only available if `tx_headless_background_color` is other than none.

#### tx\_headless\_space\_after\_inside

[](#tx_headless_space_after_inside)

Similar to `space_before_inside`.

### pages

[](#pages)

#### tx\_headless\_footer

[](#tx_headless_footer)

The `tx_headless_footer` flexform field contains the footer content. Use the following code to set a flexform:

```
\Remind\Headless\Utility::setFooterFlexForm('FILE:EXT:provider_extension/Configuration/FlexForms/Footer.xml');
```

#### tx\_headless\_overview\_label

[](#tx_headless_overview_label)

An `tx_headless_overview_label` field is added to the page TCA. The field should be used to customize the label for the overview pages.

### Crop Variants

[](#crop-variants)

`ImageProcessingMiddleware` accepts a breakpoint as a query parameter and uses a crop variant by that name if available. Appropriate crop variants have to be created for content elements.

Example for crop variants for breakpoints sm, md and lg for `textpic`:

```
$GLOBALS['TCA']['tt_content']['types']['textpic']['columnsOverrides']['image']['config']['overrideChildTca']['columns']['crop']['config'] = [
	'cropVariants' => [
		'sm' => [
			// configuration
		],
		'md' => [
			// configuration
		],
		'lg' => [
			// configuration
		],
	],
];
```

Example for crop variants for breakpoints sm, md and lg for `accordion` items:

```
$GLOBALS['TCA']['tt_content']['types']['accordion']['columnsOverrides']['tx_headless_item']['config']['overrideChildTca']['columns']['image']['config']['overrideChildTca']['columns']['crop']['config'] = [
	'cropVariants' => [
		'sm' => [
			// configuration
		],
		'md' => [
			// configuration
		],
		'lg' => [
			// configuration
		],
	],
];
```

Content Elements
----------------

[](#content-elements)

### accordion

[](#accordion)

Uses `tx_headless_item`, items consist of text (header, subheader, bodytext, title), a flexform field and images.

### tabs

[](#tabs)

Uses `tx_headless_item`, items consist of text (header, subheader, bodytext) only.

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance87

Actively maintained with recent releases

Popularity12

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 97.3% 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 ~91 days

Total

17

Last Release

66d ago

Major Versions

1.0.0 → 2.0.02022-10-25

2.x-dev → 3.0.02023-06-22

v3.3.0 → v4.0.02024-11-13

v4.2.0 → v5.0.02026-02-24

PHP version history (4 changes)1.0.0PHP ^7.4.0

2.0.0PHP ^8.1

3.0.0PHP ^8.2

v5.0.0PHP ^8

### Community

Maintainers

![](https://www.gravatar.com/avatar/8d03cd13f9debb6b3cac65176a1743811fc4f24f3d2bb20a4c324c006382f072?d=identicon)[remindgmbh](/maintainers/remindgmbh)

---

Top Contributors

[![dvdmlln](https://avatars.githubusercontent.com/u/64189384?v=4)](https://github.com/dvdmlln "dvdmlln (257 commits)")[![doleh](https://avatars.githubusercontent.com/u/73342114?v=4)](https://github.com/doleh "doleh (6 commits)")[![KonstantCode](https://avatars.githubusercontent.com/u/151463095?v=4)](https://github.com/KonstantCode "KonstantCode (1 commits)")

###  Code Quality

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/remind-typo3-headless/health.svg)

```
[![Health](https://phpackages.com/badges/remind-typo3-headless/health.svg)](https://phpackages.com/packages/remind-typo3-headless)
```

###  Alternatives

[netresearch/rte-ckeditor-image

Image support in CKEditor for the TYPO3 ecosystem - by Netresearch

63991.3k4](/packages/netresearch-rte-ckeditor-image)[christophlehmann/imageoptimizer

Optimize uploaded/processed images with binaries of your choice

46501.8k](/packages/christophlehmann-imageoptimizer)[b13/assetcollector

Add CSS and SVG files and strings as inline style tag/inline svg to the html code.

10118.4k](/packages/b13-assetcollector)[causal/fal-protect

Protect everything within /fileadmin/ based on associated folder and file restrictions (visibility, user groups and dates of publication).

1269.5k](/packages/causal-fal-protect)[fanor51/headless-container-support

Extension that adds container support for TYPO3 Headless extension

1142.1k](/packages/fanor51-headless-container-support)[mautic/mautic-typo3

Add-on TYPO3 extension that enhances the "EXT:marketing\_automation" TYPO3 extension by connecting it to the Mautic Marketing Automation platform: Determine "Persona" from Mautic segments. Also provides additional services e.g. language synchronisation between Mautic and TYPO3.

236.3k](/packages/mautic-mautic-typo3)

PHPackages © 2026

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