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(2w ago)1971GPL-3.0-or-laterPHPPHP ^8CI passing

Since Feb 24Pushed 2w agoCompare

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

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

46

—

FairBetter than 93% of packages

Maintenance97

Actively maintained with recent releases

Popularity12

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity57

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

15d 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

[typo3/cms-setup

TYPO3 CMS Setup - Allows users to edit a limited set of options for their user profile, including preferred language, their name and email address.

178.4M87](/packages/typo3-cms-setup)[friendsoftypo3/headless_news

This extension provides integration with news to output content from TYPO3 in JSON format.

1153.3k](/packages/friendsoftypo3-headless-news)[fanor51/headless-container-support

Extension that adds container support for TYPO3 Headless extension

1139.9k](/packages/fanor51-headless-container-support)

PHPackages © 2026

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