PHPackages                             ttree/sortablenode - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. ttree/sortablenode

ActiveTypo3-flow-package[Utility &amp; Helpers](/categories/utility)

ttree/sortablenode
==================

This package allow complexe node sorting strategies

0.1(12y ago)0661MITPHP

Since Jan 13Pushed 12y ago3 watchersCompare

[ Source](https://github.com/ttreeagency/Ttree.SortableNode)[ Packagist](https://packagist.org/packages/ttree/sortablenode)[ RSS](/packages/ttree-sortablenode/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependencies (1)Versions (2)Used By (1)

Ttree.SortableNode
==================

[](#ttreesortablenode)

This package provide the logic needed for sorting node in TYPO3.TYPO3CR (TYPO3 Content Repository) by any even multiple properties. The package support multiple sorting strategy (algorithm) and multile configure per NodeType and ParentNode or ParentNode path.

This package is under heavy development, so everything can change, break ... or work as expected.

Configuration
=============

[](#configuration)

Configuration can be done in any Settings.yaml file:

```
Ttree:
  SortableNode:
	enabled: FALSE
	defaultSortingStrategy: DumbSortingStrategy
	configuration:
	  'Ttree.Plugin.MicroEvent:Event':
		10:
		  position:           'start'
		  label:              'Main sorting for Event node'
		  identifier:         '/sites/website/event'
		  strategy:           'DumbSortingStrategy'
		  properties:
			# eventStartDate:   ASC
			title:            ASC

```

The "identifier" can be a node path or a nodedata identifier (not the persistence\_object\_identifier). The "strategy" can be configured, and you can even add your own strategy if needed. The property "Ttree.SortableNode.enabled" enable automatic sorting of node based on an Aspect triggered after the update or add method from NodeDataRepository.

Currently only the DumbSortingStrategy (and inefficient) strategy is working. More powerful strategy will be added in the future.

A CLI command exist to sort node manually.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

4505d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/cd3279e45009314122be6b398a54418a037e1b248fb4740cb66bb742d05e3512?d=identicon)[ttree](/maintainers/ttree)

---

Top Contributors

[![dfeyer](https://avatars.githubusercontent.com/u/221173?v=4)](https://github.com/dfeyer "dfeyer (5 commits)")

### Embed Badge

![Health badge](/badges/ttree-sortablenode/health.svg)

```
[![Health](https://phpackages.com/badges/ttree-sortablenode/health.svg)](https://phpackages.com/packages/ttree-sortablenode)
```

###  Alternatives

[kaystrobach/development-tools

111.9k](/packages/kaystrobach-development-tools)

PHPackages © 2026

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