PHPackages                             remcosmitsdev/buildable-serializer-bundle - 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. remcosmitsdev/buildable-serializer-bundle

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

remcosmitsdev/buildable-serializer-bundle
=========================================

An OPT-in performance boost for the symfony serializer component. By moving runtime overhead to buildtime.

1.0.0(2mo ago)144[1 issues](https://github.com/RemcoSmitsDev/buildable-serializer-bundle/issues)MITPHPPHP 8.1.\*

Since May 14Pushed 2mo agoCompare

[ Source](https://github.com/RemcoSmitsDev/buildable-serializer-bundle)[ Packagist](https://packagist.org/packages/remcosmitsdev/buildable-serializer-bundle)[ RSS](/packages/remcosmitsdev-buildable-serializer-bundle/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (1)Dependencies (18)Versions (2)Used By (0)

Buildable Serializer Bundle
===========================

[](#buildable-serializer-bundle)

A Symfony bundle that generates optimised, build-time normalizer classes for the Symfony Serializer component.

Instead of relying on the generic reflection-based `ObjectNormalizer` at runtime, this bundle analyses your classes at compile time and writes plain PHP normalizer classes tailored to each model. The result is a faster serializer with zero runtime reflection overhead.

---

Benchmarks
----------

[](#benchmarks)

Normalizing and denormalizing a single `Post` (with a nested `User` and `Address`) **200 000 times** in a local environment:

OperationSymfony `ObjectNormalizer` (before)Generated (after)Performance gainNormalize4 208 ms250 ms**~17× faster** (~94.1% reduction)Denormalize6 076 ms324 ms**~18× faster** (~94.5% reduction)The benchmark was produced with:

```
