Recently, I’ve been busy rewriting small PHP libraries like ValueWrapper, HTMLTag, PHPNgrams, DynamicObjects, PHPartition, PHPermutations and Memoize. I mostly rewrote them because of multiple things I wanted to do: Use SOLID principle: The Single Responsibility Principle Automatically generate and publish the library documentation using APIgen Improve the tests quality by using PHP Infection Improve the class hierarchy design when using a PHP trait and remove some limitations.

Read More