PHPackages                             yuseferi/drupal-quality-checker - 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. yuseferi/drupal-quality-checker

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

yuseferi/drupal-quality-checker
===============================

Setups code quality checking tools for Drupal project.

2.0.1(4y ago)06MIT

Since Dec 10Pushed 4y agoCompare

[ Source](https://github.com/yuseferi/drupal-quality-checker)[ Packagist](https://packagist.org/packages/yuseferi/drupal-quality-checker)[ Docs](https://github.com/yuseferi/drupal-quality-checker)[ RSS](/packages/yuseferi-drupal-quality-checker/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (6)Versions (11)Used By (0)

Drupal Code Quality Checker
===========================

[](#drupal-code-quality-checker)

---

Overview
--------

[](#overview)

Provides set of libraries to easily setup code quality checks based on [GrumPHP](https://github.com/phpro/grumphp) for Drupal module/theme/profile. Check out this [Lullabot article](https://www.lullabot.com/articles/how-enforce-drupal-coding-standards-git) for more details.

> *Note:* This library aim to help contributed/custom Drupal module/theme/profile hosted in individual git repository.

Install
-------

[](#install)

1. Add `yuseferi/drupal-quality-checker` to `composer.json` (like [here](https://github.com/yuseferi/modal_config/blob/8.x-1.x/composer.json#L21)) or just `composer require --dev yuseferi/drupal-quality-checker`
2. Replace `grumphp.yml` in project's root directory (not Drupal root directory) with `vendor/yuseferi/drupal-quality-checker/grumphp.yml.dist`

That's it. Now, all tasks (listed below) run on every `git commit`.

> *Note:* As part of install, GrumPHP adds `pre-commit` hook to repository. Existing `pre-commit` might get [destroyed](https://github.com/phpro/grumphp/issues/416) when install/uninstall.

Features
--------

[](#features)

1. [PHPCS](https://github.com/squizlabs/PHP_CodeSniffer) with Drupal standard.
2. [PHP Lint](http://www.icosaedro.it/phplint/)
3. [YAML Lint](http://www.yamllint.com/)
4. [Composer](https://github.com/composer/composer)
5. [Composer Normalize](https://github.com/ergebnis/composer-normalize)
6. [JSONLint](https://jsonlint.com/)
7. [PHP Copy/Paste Detector (CPD)](https://github.com/sebastianbergmann/phpcpd)

Long list of additional checks/validators available [here](https://github.com/phpro/grumphp/blob/master/doc/tasks.md#tasks-1).

Sample
------

[](#sample)

### Pass

[](#pass)

[![drupal-quality-checker-pass](./docs/images/drupal-quality-checker-pass.png)](./docs/images/drupal-quality-checker-pass.png)

### Fail

[](#fail)

[![drupal-quality-checker-fail](./docs/images/drupal-quality-checker-fail.png)](./docs/images/drupal-quality-checker-fail.png)

Demo
----

[](#demo)

Implemented in [Modal Configuration](https://github.com/yuseferi/modal_config) module.

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 70.7% 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 ~148 days

Recently: every ~114 days

Total

10

Last Release

1734d ago

Major Versions

1.5.0 → 2.02021-08-08

### Community

Maintainers

![](https://www.gravatar.com/avatar/7b14bd531ff132808fda9211617694b92711f10796730c92a23691fe525ba203?d=identicon)[yuseferi](/maintainers/yuseferi)

---

Top Contributors

[![vijaycs85](https://avatars.githubusercontent.com/u/1220029?v=4)](https://github.com/vijaycs85 "vijaycs85 (41 commits)")[![truls1502](https://avatars.githubusercontent.com/u/913581?v=4)](https://github.com/truls1502 "truls1502 (6 commits)")[![yuseferi](https://avatars.githubusercontent.com/u/1736832?v=4)](https://github.com/yuseferi "yuseferi (4 commits)")[![alexpott](https://avatars.githubusercontent.com/u/769634?v=4)](https://github.com/alexpott "alexpott (2 commits)")[![hussainweb](https://avatars.githubusercontent.com/u/1040271?v=4)](https://github.com/hussainweb "hussainweb (2 commits)")[![Judapriest](https://avatars.githubusercontent.com/u/4941691?v=4)](https://github.com/Judapriest "Judapriest (1 commits)")[![gugerard](https://avatars.githubusercontent.com/u/1931900?v=4)](https://github.com/gugerard "gugerard (1 commits)")[![dawehner](https://avatars.githubusercontent.com/u/29678?v=4)](https://github.com/dawehner "dawehner (1 commits)")

### Embed Badge

![Health badge](/badges/yuseferi-drupal-quality-checker/health.svg)

```
[![Health](https://phpackages.com/badges/yuseferi-drupal-quality-checker/health.svg)](https://phpackages.com/packages/yuseferi-drupal-quality-checker)
```

###  Alternatives

[acquia/orca

A tool for testing a company's software packages together in the context of a realistic, functioning, best practices Drupal build

32902.4k](/packages/acquia-orca)[vijaycs85/drupal-quality-checker

Setups code quality checking tools for Drupal project.

52192.3k4](/packages/vijaycs85-drupal-quality-checker)[wp-cli/wp-cli-tests

WP-CLI testing framework

422.7M87](/packages/wp-cli-wp-cli-tests)[axelerant/drupal-quality-checker

Code quality checking tools for Drupal project.

13197.9k1](/packages/axelerant-drupal-quality-checker)[youwe/testing-suite

Contains Youwe's default testing packages for php.

13176.9k8](/packages/youwe-testing-suite)[sci3ma/symfony-grumphp

Configured GrumPHP with bunch of tools for static code analysis Symfony Framework

196.7k](/packages/sci3ma-symfony-grumphp)

PHPackages © 2026

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