PHPackages                             lovullo/phpqaconfig - 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. [Testing &amp; Quality](/categories/testing)
4. /
5. lovullo/phpqaconfig

AbandonedLibrary[Testing &amp; Quality](/categories/testing)

lovullo/phpqaconfig
===================

PHP QA and development tool configuration for LoVullo Associates.

1.1.11(7y ago)115.1kGPL-3.0+PHP

Since Nov 18Pushed 5y ago8 watchersCompare

[ Source](https://github.com/lovullo/phpqaconfig)[ Packagist](https://packagist.org/packages/lovullo/phpqaconfig)[ RSS](/packages/lovullo-phpqaconfig/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (6)Versions (59)Used By (0)

phpqaconfig
===========

[](#phpqaconfig)

Configuration for QA and development tools specific to the coding standards at LoVullo Associates. This package, combined with `lovullo/phpqatools` is meant to be a base for new PHP projects.

Installation
============

[](#installation)

Simply require it in your project's `composer.json`

```
    "require-dev": {
        "lovullo/phpqaconfig": "@stable"
    }
```

Or

```
$ composer require --dev lovullo/phpqaconfig
```

Usage
=====

[](#usage)

Project Setup
-------------

[](#project-setup)

Create a `build.xml` file in your project root with the following contents:

```

```

Create a `phpunit.xml` file in your project root with the following contents:

```

      tests/

```

See the "Customizing" section below if you have an existing PHPUnit configuration elsewhere.

Development
-----------

[](#development)

When developing, use the following ant targets:

- composer
- phpunit
- phpcs
- phpmd
- phpcpd
- phploc

For example:

```
$ ant phpcs phpmd phpcpd
```

Continuous Integration
----------------------

[](#continuous-integration)

When configuring Continuous Integration (ie. Jenkins), `composer` must download and install this repo before you can run `ant` tasks. Add an "Execute Shell" build step to Jenkins with the following command:

```
$ composer install -o
```

Next, add an "Invoke Ant" build step with the following target:

```
build-qa

```

This will run `check_mergeconflicts`, `phplint`, `phpunit`, `phpcs-ci`, `pdepend`, `phpmd-ci`, `phpcpd-ci`, `phploc-ci`, and `phpdox`.

For jobs that need to run quickly and only need a minimal number of QA checks, run the following targets instead:

```
build-quick

```

This will run `check_mergeconflicts`, `phplint`, and `phpunit`.

Add additional build targets to your `build.xml` file as appropriate for your particular project.

Customizing
===========

[](#customizing)

QA Tools Location
-----------------

[](#qa-tools-location)

The included `build.xml` assumes that all the QA tools are installed into `./vendor/bin`. If they are installed elsewhere, provide a `toolsdir` property to their location:

```

```

PHP Lint Configuration
----------------------

[](#php-lint-configuration)

By default, the included `build.xml` runs `php -l` on all PHP files in the project except for the `vendor/` directory in the root of your project. You can override this setting using the `phplintignore` property:

```

```

PHPUnit Configuration
---------------------

[](#phpunit-configuration)

By default, the included `build.xml` assumes that there is a `phpunit.xml` file in the same directory as itself. If you already have a `phpunit.xml` file located somewhere else, you can override the configuration as follows:

```

```

PHP\_CodeSniffer Configuration
------------------------------

[](#php_codesniffer-configuration)

You can customize the files that are ignored in `phpcs` checks by specifying a `phpcsignore` property:

```

```

By default, only the `vendor` directory is excluded from checks.

You can change what PHP\_CodeSniffer standard uses by overriding the `phpcsstandard` property:

```

```

PHPMD Configuration
-------------------

[](#phpmd-configuration)

You can customize the files that are ignored in `phpmd` checks by specifying a `phpmdignore` property:

```

```

By default, only the `vendor` directory is excluded from checks.

PHPCPD Configuration
--------------------

[](#phpcpd-configuration)

You can customize the files that are ignored in `phpcpd` checks by specifying a `phpcpdignore` property:

```

```

By default, only the `vendor` directory is excluded from checks.

phpDox Configuration
--------------------

[](#phpdox-configuration)

```

```

Disabling QA Checks
-------------------

[](#disabling-qa-checks)

If you do not want certain QA tools to run for a project, add one or more of the following `disable` properties prior to including the base `build.xml` file:

```

```

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity77

Established project with proven stability

 Bus Factor1

Top contributor holds 72% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~25 days

Recently: every ~16 days

Total

58

Last Release

2792d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6216812?v=4)[LoVullo Associates, Inc.](/maintainers/lovullo)[@lovullo](https://github.com/lovullo)

---

Top Contributors

[![frazjp65](https://avatars.githubusercontent.com/u/13321887?v=4)](https://github.com/frazjp65 "frazjp65 (18 commits)")[![deinonychuscowboy](https://avatars.githubusercontent.com/u/2939433?v=4)](https://github.com/deinonychuscowboy "deinonychuscowboy (2 commits)")[![lodzo](https://avatars.githubusercontent.com/u/2159013?v=4)](https://github.com/lodzo "lodzo (2 commits)")[![mikegerwitz](https://avatars.githubusercontent.com/u/93763?v=4)](https://github.com/mikegerwitz "mikegerwitz (2 commits)")[![Slashbunny](https://avatars.githubusercontent.com/u/368525?v=4)](https://github.com/Slashbunny "Slashbunny (1 commits)")

---

Tags

composercontinous-integrationphpphpcpdphpcsphpmdphpunitqa-checksphpconfigurationqatools

### Embed Badge

![Health badge](/badges/lovullo-phpqaconfig/health.svg)

```
[![Health](https://phpackages.com/badges/lovullo-phpqaconfig/health.svg)](https://phpackages.com/packages/lovullo-phpqaconfig)
```

###  Alternatives

[h4cc/phpqatools

A meta composer package for PHP QA Tools.

6418.6k1](/packages/h4cc-phpqatools)[bear/qatools

PHP QA Tools

22116.2k6](/packages/bear-qatools)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
