TYPO3 v11.1 will ship with a brand—new, fast browsable Folder Tree with a powerful filter functionality.
TYPO3 v11.1 will ship with a brand—new, fast browsable Folder Tree with a powerful filter functionality. I’m pretty sure that this feature will make editors excited to use and make their daily lives with TYPO3 easier.
The SVG-based Folder Tree is loading natively in the main TYPO3 Backend. The Folder Tree filter is based on the TYPO3’s File Abstraction Layer (FAL) and does not only search for folder names but also for file names that contain the filter word. Editors can search for “.jpg”, and the tree lists all folders storing JPG files.
The year was 2006 when I started contributing to TYPO3 Core. I asked for the status of a planned feature for TYPO3 4.1, where Ingmar Schlecht—the 4.1 release manager—said, “Hey, I put it on the roadmap, but since we all do this because we love the product, but nobody took the job, the feature is probably not going to make it.” The announced feature was to have an AJAX-based page tree, so the whole tree would not get reloaded within the iframe (back then) all the time. I had a customer with 10,000 pages in their TYPO3 instance, and the page tree was just too slow.
We started migrating away from ExtJS and built our tree around a native, SVG-based tree component on a smaller library called d3.js. TYPO3 v8 had the Category Selection based on the so-called SVG tree. For TYPO3 v9 LTS, the Page Tree was fully migrated to d3.js. We initially had some performance issues, especially on larger sites or when using Workspaces, but that wasn’t d3.js’ fault; more a technical implementation on our side. These issues were finally resolved when we re-implemented the AJAX-loading of the navigation levels (for the third time). Big thanks to Tymoteusz Motylewski and Richard Haeser for pushing this feature over the finish line!
Maybe you see the missing part: The area that was scarcely touched (except when we introduced jQuery back then) was the Folder Tree! It behaved exactly the same as in TYPO3 4.2—still loading in its own “navigation iframe” (nav_frame), with the same feature set. This is also the single reason we kept the whole “nav_frame” support in TYPO3, which also blocks us from going further into all the cool possibilities with Drag&Drop across components, as they still behave so differently until now.
This is my story with TYPO3 Tree implementations so far. But if you think this is the end of the story, you’re wrong—because it is actually the beginning...