This work based on Turbulence
A quick hack based on Michael Feathers' recent work in project churn and complexity
bin/turbulence_php -repo=/path/to/git/project -out=/tmp/output
It takes /path/to/git/project repository, calculates class/file changes and some kind of complexities, then create an out.json file under /tmp/output (it contains the raw data in JSON format).
bin/turbulence_php -repo=/path/to/git/project -out=/tmp/output -path=src
When -path parameter presents only files (classes) under src/ will be processed.
If everything went well a viewer.html will be generated under output (/tmp/output). It has no external dependency, so just launch it with your favorite browser.
google-chrome /tmp/output/viewer.html
Let's create the metrics of Twig template engine:
pear install pear.pdepend.org/PHP_Depend-beta
git clone git://github.com/blerou/turbulence.php.git
git clone git://github.com/fabpot/Twig.git
turbulence.php/bin/turbulence_php -repo=Twig -out=/tmp/Twig -path=lib
google-chrome /tmp/Twig/viewer.html
It uses PDepend to calculate complexity.
pear channel-discover pear.pdepend.org
pear install pdepend/PHP_Depend-beta