PHPackages                             amdeu/typo3-label-editor - 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. [Localization &amp; i18n](/categories/localization)
4. /
5. amdeu/typo3-label-editor

ActiveTypo3-cms-extension[Localization &amp; i18n](/categories/localization)

amdeu/typo3-label-editor
========================

Label Editor - Manage translation overrides for locallang files in a backend module

1.1.1(2mo ago)0109GPL-2.0-or-laterPHP

Since Oct 27Pushed 2mo agoCompare

[ Source](https://github.com/amdeu/typo3-label-editor)[ Packagist](https://packagist.org/packages/amdeu/typo3-label-editor)[ RSS](/packages/amdeu-typo3-label-editor/feed)WikiDiscussions main Synced today

READMEChangelog (4)Dependencies (3)Versions (5)Used By (0)

TYPO3 Label Editor
==================

[](#typo3-label-editor)

A TYPO3 backend module for editing translation labels (locallang files) without modifying the original extension files. This extension's intended goal is to allow editors to independently translate frontend labels without requiring developer involvement.

Features
--------

[](#features)

- 📝 **Edit labels** - Customize any label from any extension
- 🌍 **Multi-language support** - Edit multiple languages simultaneously
- ➕ **Add custom labels** - Create new labels that don't exist in the original files
- 🔍 **Search &amp; filter** - Quickly find labels
- 🎯 **Non-destructive** - Original extension files remain untouched

Works with [locallang\_formats](https://github.com/amdeu/typo3-locallang-formats) if you want to use YAML, JSON, or PHP array files instead of XLF.

[![index](https://private-user-images.githubusercontent.com/48531005/579438953-b8276abc-837f-4097-8678-0a74859d54e8.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Nzk1MjQ2MjksIm5iZiI6MTc3OTUyNDMyOSwicGF0aCI6Ii80ODUzMTAwNS81Nzk0Mzg5NTMtYjgyNzZhYmMtODM3Zi00MDk3LTg2NzgtMGE3NDg1OWQ1NGU4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA1MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNTIzVDA4MTg0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTZhZmQ5YTNkMDBhNWE4YzAxODIzNzc3ZGUxZWFmZmJiMTkyYjljZDNmMTg4Nzk1YzdhNWJlNmU3OWEzMGM0NjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JnJlc3BvbnNlLWNvbnRlbnQtdHlwZT1pbWFnZSUyRnBuZyJ9.WAqpWzJ17JWFOtiJA5SEEuqwu6ymByR61Wh4_Ex3-aA)](https://private-user-images.githubusercontent.com/48531005/579438953-b8276abc-837f-4097-8678-0a74859d54e8.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Nzk1MjQ2MjksIm5iZiI6MTc3OTUyNDMyOSwicGF0aCI6Ii80ODUzMTAwNS81Nzk0Mzg5NTMtYjgyNzZhYmMtODM3Zi00MDk3LTg2NzgtMGE3NDg1OWQ1NGU4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA1MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNTIzVDA4MTg0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTZhZmQ5YTNkMDBhNWE4YzAxODIzNzc3ZGUxZWFmZmJiMTkyYjljZDNmMTg4Nzk1YzdhNWJlNmU3OWEzMGM0NjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JnJlc3BvbnNlLWNvbnRlbnQtdHlwZT1pbWFnZSUyRnBuZyJ9.WAqpWzJ17JWFOtiJA5SEEuqwu6ymByR61Wh4_Ex3-aA)[![edit](https://private-user-images.githubusercontent.com/48531005/579437281-b6ceeb3c-887a-4310-b656-57549a15d2f9.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Nzk1MjQ2MjksIm5iZiI6MTc3OTUyNDMyOSwicGF0aCI6Ii80ODUzMTAwNS81Nzk0MzcyODEtYjZjZWViM2MtODg3YS00MzEwLWI2NTYtNTc1NDlhMTVkMmY5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA1MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNTIzVDA4MTg0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJhNTY1N2FkMGQyNjUwZDFkOGZhZGM4ODQ3Yjk1NTVhMTI3MzE1MDlhYzkzMTcwMzE3OWRiZWIwODY5YWZlMmEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JnJlc3BvbnNlLWNvbnRlbnQtdHlwZT1pbWFnZSUyRnBuZyJ9.ar4hGlKopP29jtEcVSu1dX2zYj_7fJ3xCLq_F-Zgqwk)](https://private-user-images.githubusercontent.com/48531005/579437281-b6ceeb3c-887a-4310-b656-57549a15d2f9.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Nzk1MjQ2MjksIm5iZiI6MTc3OTUyNDMyOSwicGF0aCI6Ii80ODUzMTAwNS81Nzk0MzcyODEtYjZjZWViM2MtODg3YS00MzEwLWI2NTYtNTc1NDlhMTVkMmY5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA1MjMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNTIzVDA4MTg0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJhNTY1N2FkMGQyNjUwZDFkOGZhZGM4ODQ3Yjk1NTVhMTI3MzE1MDlhYzkzMTcwMzE3OWRiZWIwODY5YWZlMmEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JnJlc3BvbnNlLWNvbnRlbnQtdHlwZT1pbWFnZSUyRnBuZyJ9.ar4hGlKopP29jtEcVSu1dX2zYj_7fJ3xCLq_F-Zgqwk)📋 Requirements
--------------

[](#-requirements)

- TYPO3 13.4
- PHP 8.2

📦 Installation
--------------

[](#-installation)

```
composer require amdeu/typo3-label-editor
```

🛠️ Usage
--------

[](#️-usage)

### Access the Module

[](#access-the-module)

Navigate to **Site Management → Label Editor** in the TYPO3 backend.

### Add an Extension

[](#add-an-extension)

1. Find the extension you want to edit in the "Add Extension" section
2. Click the "+" button to add it to management
3. The extension's locallang files are now available for editing

### Edit Labels

[](#edit-labels)

1. Select an extension from the "Managed Extensions" list
2. Choose the label file from the dropdown
3. Select one or more languages using the checkboxes
4. Edit labels in the table:
    - **Single language view**: Shows original and custom override
    - **Multi-language view**: Shows override for each selected language
5. Click "Save" in the document header

### Add Custom Labels

[](#add-custom-labels)

1. Enter a label key (e.g., `my.custom.label`) in the input field
2. Click "+"
3. The label is created across all language files
4. Fill in the values and save

### Search Labels

[](#search-labels)

Use the search box above the table to filter labels by key or value in real-time.

### Remove an Extension

[](#remove-an-extension)

1. Click the trash icon next to a managed extension
2. Confirm the warning dialog
3. **All custom label overrides for that extension will be deleted**

### Configuration

[](#configuration)

Extension Configuration in Backend:

`System > Settings > Extension Configuration > label_editor`

- `allowedExtensions`: **Restrict which extensions can be edited**. Comma-separated list of extension keys. If empty, all extensions are allowed.

💡 How It Works
--------------

[](#-how-it-works)

The extension uses TYPO3's `locallangXMLOverride`/`resourceOverrides` feature:

1. When you add an extension, a **registry** is created at `var/label_editor/registry.json`
2. Custom labels are stored in `var/label_editor/overrides/{extension}/{file}.xlf`
3. TYPO3 merges these override files with the original locallang files
4. Original extension files remain unchanged

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance87

Actively maintained with recent releases

Popularity13

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

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

Total

4

Last Release

79d ago

Major Versions

0.1.0 → 1.0.02025-11-13

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/48531005?v=4)[amdeu](/maintainers/amdeu)[@amdeu](https://github.com/amdeu)

---

Top Contributors

[![amdeu](https://avatars.githubusercontent.com/u/48531005?v=4)](https://github.com/amdeu "amdeu (14 commits)")

### Embed Badge

![Health badge](/badges/amdeu-typo3-label-editor/health.svg)

```
[![Health](https://phpackages.com/badges/amdeu-typo3-label-editor/health.svg)](https://phpackages.com/packages/amdeu-typo3-label-editor)
```

###  Alternatives

[friendsoftypo3/content-blocks

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

103519.9k53](/packages/friendsoftypo3-content-blocks)[web-vision/wv_deepltranslate

DeepL Translate (CORE) - This extension provides option to translate content element, and TCA record texts to DeepL supported languages.

33304.3k](/packages/web-vision-wv-deepltranslate)[web-vision/deepltranslate-core

DeepL Translate (CORE) - This extension provides option to translate content element, and TCA record texts to DeepL supported languages.

33142.5k8](/packages/web-vision-deepltranslate-core)[wazum/sluggi

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

40529.5k](/packages/wazum-sluggi)[pagemachine/typo3-formlog

Form log for TYPO3

23238.6k8](/packages/pagemachine-typo3-formlog)[leuchtfeuer/locate

Locate - The users country, preferred language and other facts will be detected. Depending on configurable rules the user can be redirected to other languages or pages. Locate also provides geo blocking for configurable pages in configurable countries.

1186.6k](/packages/leuchtfeuer-locate)

PHPackages © 2026

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