# doctrine-extensions/DoctrineExtensions

Doctrine2 behavioral extensions, Translatable, Sluggable, Tree-NestedSet, Timestampable, Loggable, Sortable

Repository: https://github.com/doctrine-extensions/DoctrineExtensions
Canonical: https://ross.abutalabs.com/products/doctrineextensions
Language: PHP
License: MIT
License Family: permissive
Topics: doctrine, php, doctrine-orm, doctrine-odm-mongodb, nested-sets
Last push: 2026-08-10T17:08:40+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 97, release rhythm 83, longevity 100
- inputs: {"age_days": 5843, "days_push": 23, "days_rel": 32, "gap_med": 60.0, "n_releases_24m": 9}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4140, forks 1252 (observed 2026-08-28T04:08:36.287120+00:00)

## What it is
A collection of behavioral extensions for Doctrine ORM and MongoDB ODM, including Translatable, Sluggable, Tree (nested set, closure, materialized path), Timestampable, Loggable, Sortable, Blameable, and SoftDeleteable. Behaviors attach to Doctrine's event system to automatically handle record changes on flush.

## Use cases
- add slugs to doctrine entities
- translate doctrine entities into multiple languages
- manage hierarchical tree structures with doctrine orm
- automatically set created and updated timestamps on entities
- track entity change history and versions
- soft delete records instead of removing them
- record which user created or updated an entity
- sort entities with an orderable position field

## When to choose
- you use Doctrine ORM or MongoDB ODM and need common entity behaviors without writing them yourself
- you need multilingual content stored per entity in PHP applications
- you want mature, widely used Doctrine extensions with Symfony and Laravel integration docs

## When to avoid
- you use a different ORM or plain PDO without Doctrine
- you need only one simple behavior that is trivial to implement inline
- your project requires a framework-specific ORM feature set outside Doctrine's event system

## Facets
- artifact type: library
- maturity: stable
- function: orm, middleware, internationalization, logging
- domain: databases, web-development, backend, developer-tools
- platform: php
- tags: doctrine, doctrine-orm, doctrine-odm, behaviors, sluggable, timestampable, translatable, tree, nested-set, soft-deleteable, symfony, laravel

## Member repositories
- doctrine-extensions/DoctrineExtensions (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:36.287120+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:22:59.218134+00:00, confidence not recorded.
  - readme: https://github.com/doctrine-extensions/DoctrineExtensions (fetched 2026-08-28T04:08:36.287120+00:00, sha 26739fcb1f84)
- Data as of 2026-08-30T08:39:29.467469+00:00.
