Full-text search in TYPO3 with EXT:solr is the established standard – reliable, feature-rich, and battle-tested. The move to TYPO3 v14 LTS and Apache Solr 10, however, brings several fundamental changes: the indexing system has been rebuilt, the frontend freed from jQuery, and the configset modernised.
This fork tracks the v14 beta branch and pulls a number of these changes together, serving as an early test bed for projects planning to migrate to v14 and Solr 10. This article sets out, objectively, what is changing and what the current status means in practice.
Table of Contents
Overview
What Has Been Done
Features in Detail
Installation
Overview
EXT:solr connects TYPO3 to Apache Solr as an enterprise search solution: faceted search, synonym support, autosuggest, and flexible indexing pipelines have proven themselves in production for years. The upstream project is maintained chiefly by dkd Internet Service GmbH.
TYPO3 v14 LTS and Apache Solr 10 bring several breaking changes at once: the old PageIndexer system, which relied on separate HTTP requests, has been dropped; jQuery is no longer required in the frontend; and the Solr configset must be updated to ext_solr_14_0_0. The v14 beta branch bundles these migrations, but remains under active development.
This package requires TYPO3 ^14.3, PHP ^8.2, and Apache Solr 10.0.0, and currently tracks EXT:solr 14.0.0-beta4. Treat production use with caution: the v14 branch is under active development and breaking changes are possible.
What Has Been Done
The fork is contributing actively to the v14 beta. The biggest change is the removal of the legacy PageIndexer system: the old approach of indexing pages through separate HTTP requests gives way to a unified sub-request indexing pipeline. Indexing runs roughly 12.7% faster (493.9 s → 431.3 s for 59 pages), with around 3,200 lines of code removed – mostly the eliminated HTTP overhead. The sub-requests also set the correct working directory via chdir(Environment::getPublicPath()), so relative asset paths resolve reliably.
Apache Solr 10 support spans several areas: a Docker setup for Solr 10, a new ext_solr_14_0_0 configset with the language-models module (renamed from llm in Solr 10), the Plugin JAR upgraded to 7.0.0, and Jetty 12 fixes. The frontend JavaScript has been fully migrated to Vanilla JS + autoComplete.js, with jQuery removed. A new "LLM Query Enhancer" backend module lets you configure AI-assisted query expansions directly in the TYPO3 backend.
Several bug fixes round things off: the double rawurlencode() workaround for the Managed Synonyms/Stopwords API (incompatible with Jetty 12) has been removed, along with an fe_group content leakage fix that prevents the spurious c:0 document on access-restricted pages.
Features in Detail
The new unified sub-request indexing renders pages internally, without a separate HTTP request – the chdir() fix makes sure relative asset paths (e.g. SCSS compilation) resolve correctly. Site Sets integration replaces manual TypoScript template registration.
Installation
composer config repositories.ext-solr vcs https://github.com/dirnbauer/ext-solr.git
composer require apache-solr-for-typo3/solr:dev-mainFor the Solr 10 configset, copy the bundled Resources/Private/Solr/solr.xml into the Solr home path and point the core at ext_solr_14_0_0. The Docker image in the repository ships a pre-configured Solr 10 setup.
Frequently Asked Questions
Conclusion
Apache Solr 10, the new indexing approach, and the removal of jQuery together bring EXT:solr 14 fully up to date – even if its beta status still calls for caution. Anyone keen to start migrating to v14 early will find a solid starting point here.
Our thanks go to dkd Internet Service GmbH and the TYPO3 Solr community for the excellent apache-solr-for-typo3/solr (EXT:solr) extension. We are building on this work and have contributed to the v14/Solr 10 migration with changes to indexing, configsets, a Vanilla JS frontend, and the LLM Query Enhancer module. The vast majority of the work comes from dkd Internet Service GmbH and the community: the architecture, index queue, Solr configsets, and TYPO3 integration. The extension is licensed under GPL-3.0-or-later.