# stof/StofDoctrineExtensionsBundle

Integration bundle for DoctrineExtensions by l3pp4rd in Symfony

Repository: https://github.com/stof/StofDoctrineExtensionsBundle
Canonical: https://ross.abutalabs.com/products/stofdoctrineextensionsbundle
Homepage: https://symfony.com/bundles/StofDoctrineExtensionsBundle/current/index.html
Language: PHP
License: MIT
License Family: permissive
Topics: php, symfony, symfony-bundle, doctrine, doctrine-orm, doctrine-odm-mongodb, hacktoberfest
Last push: 2026-01-23T08:46:28+00:00

## Health v2 (maintenance only)
Score: 68/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 63, release rhythm 55, longevity 100
- inputs: {"age_days": 5776, "days_push": 222, "days_rel": 222, "gap_med": 35, "n_releases_24m": 6}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1930, forks 382 (observed 2026-08-28T04:05:56.113181+00:00)

## What it is
A Symfony bundle integrating the DoctrineExtensions library, adding behaviors like Sluggable, Timestampable, Translatable, Tree, Loggable, Blameable, Sortable, Softdeleteable, and Uploadable to Doctrine ORM and MongoDB ODM entities. It wires the extension listeners into Symfony's configuration and dependency injection system.

## Use cases
- add slug generation to doctrine entities in symfony
- automatically update created_at and updated_at timestamps
- translate doctrine entities into multiple languages
- implement nested set or materialized path tree structures
- soft delete records instead of removing them
- track entity change history and versions
- make doctrine entities sortable or blameable

## When to choose
- you use Symfony with Doctrine ORM or ODM and want common entity behaviors without writing listeners yourself
- you need translatable, sluggable, timestampable, or tree behavior with annotation/attribute-based configuration
- you want extensions that can be nested together with metadata caching

## When to avoid
- you don't use Symfony - use DoctrineExtensions directly instead
- you use a non-Doctrine persistence layer
- you need only one simple behavior that a lightweight dedicated bundle handles better

## Facets
- artifact type: plugin
- maturity: stable
- function: orm, internationalization, file-upload, logging, plugin-system
- domain: web-development, backend, databases
- platform: php, self-hosted
- tags: symfony-bundle, doctrine-extensions, doctrine-orm, doctrine-odm-mongodb, sluggable, timestampable, translatable, tree-structures, soft-delete, sortable, localization, web-server

## Member repositories
- stof/StofDoctrineExtensionsBundle (main) score 68

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:56.113181+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-30T03:08:48.398599+00:00, confidence not recorded.
  - readme: https://github.com/stof/StofDoctrineExtensionsBundle (fetched 2026-08-28T04:05:56.113181+00:00, sha a108157632ba)
  - homepage: https://symfony.com/bundles/StofDoctrineExtensionsBundle/current/index.html (fetched 2026-08-29T10:48:22.552843+00:00, sha bfee7abf5bfa)
  - site_page: https://symfony.com/bundles/StofDoctrineExtensionsBundle/current/installation.html (fetched 2026-08-29T10:48:22.564182+00:00, sha 291dcc598076)
  - site_page: https://symfony.com/doc (fetched 2026-08-29T10:48:22.562178+00:00, sha 44889134f4fb)
  - site_page: https://symfony.com/releases (fetched 2026-08-29T10:48:22.565901+00:00, sha 5bd749e2b676)
  - site_page: https://symfony.com/blog/category/releases (fetched 2026-08-29T10:48:22.567721+00:00, sha 5928e60cd226)
- Data as of 2026-08-30T08:39:29.467469+00:00.
