PHPackages                             gammabeam82/schema-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. gammabeam82/schema-checker

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

gammabeam82/schema-checker
==========================

Simple schema validation library with no external dependencies.

1.0.0(7y ago)010MITPHPPHP &gt;=7.1

Since Dec 27Pushed 7y ago1 watchersCompare

[ Source](https://github.com/gammabeam82/schema-checker)[ Packagist](https://packagist.org/packages/gammabeam82/schema-checker)[ Docs](https://github.com/gammabeam82/schema-checker)[ RSS](/packages/gammabeam82-schema-checker/feed)WikiDiscussions master Synced today

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

[![Build Status](https://camo.githubusercontent.com/a43c51bd6b7567c7349237682a692dc6d36e9a3549341436727677407b598e07/68747470733a2f2f7472617669732d63692e6f72672f67616d6d616265616d38322f736368656d612d636865636b65722e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/gammabeam82/schema-checker) [![](https://camo.githubusercontent.com/18486f01c32c36dd67a8ddc0216f3730fdb9409aa35e9d4c313b84ff27c23a95/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f67616d6d616265616d38322f736368656d612d636865636b65722e737667)](https://camo.githubusercontent.com/18486f01c32c36dd67a8ddc0216f3730fdb9409aa35e9d4c313b84ff27c23a95/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f67616d6d616265616d38322f736368656d612d636865636b65722e737667) [![](https://camo.githubusercontent.com/1cc8edf1708946c1c9023f5b78035d0b5064be25691a41bc2666c93b529007cd/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f67616d6d616265616d38322f736368656d612d636865636b65722e737667)](https://camo.githubusercontent.com/1cc8edf1708946c1c9023f5b78035d0b5064be25691a41bc2666c93b529007cd/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f67616d6d616265616d38322f736368656d612d636865636b65722e737667)

#### Description

[](#description)

This library provides an easy way to validate api responses.

#### Installation

[](#installation)

```
composer require --dev gammabeam82/schema-checker
```

#### Usage

[](#usage)

```
use Gammabeam82\SchemaChecker\SchemaChecker;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;

class CategoryControllerTest extends WebTestCase
{
    /**
     * @var Client
     */
    protected static $client;

    /**
     * @var SchemaChecker
     */
    protected static $schemaChecker;

    /**
     * @inheritdoc
     */
    public function setUpBeforeClass()
    {
        static::$client = static::createClient();
        static::$schemaChecker = new SchemaChecker();
    }

    public function testListAction(): void
    {
        static::$client->request('GET', '/api/v1/categories/');
        $response = static::$client->getResponse();

        $this->assertEquals(Response::HTTP_OK, $response->getStatusCode());

        $this->assertTrue(
            static::$schemaChecker->assertDataMatchesSchema($response->getContent(), [
                'id' => 'integer',
                'name' => 'string',
                'image' => 'string|nullable',
                'is_active' => 'boolean',
                'products' => [
                    'nullable' => true,
                    'id' => 'integer',
                    'name' => 'string',
                    'description' => 'string',
                    'images' => [
                        'nullable' => true,
                        'id' => 'integer',
                        'filename' => 'string'
                    ]
                ]
            ]),
            static::$schemaChecker->getViolations()
        );
    }
}
```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

2693d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/100f307ef5e92ef9626d1ebb3801edd45903568aa2c4170884213eef3ef5e8f7?d=identicon)[gammabeam82](/maintainers/gammabeam82)

---

Top Contributors

[![gammabeam82](https://avatars.githubusercontent.com/u/10008665?v=4)](https://github.com/gammabeam82 "gammabeam82 (26 commits)")

---

Tags

jsontestingapivalidationrest

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/gammabeam82-schema-checker/health.svg)

```
[![Health](https://phpackages.com/badges/gammabeam82-schema-checker/health.svg)](https://phpackages.com/packages/gammabeam82-schema-checker)
```

###  Alternatives

[imbo/behat-api-extension

API extension for Behat

1082.5M9](/packages/imbo-behat-api-extension)[osteel/openapi-httpfoundation-testing

Validate HttpFoundation requests and responses against OpenAPI (3+) definitions

1201.9M6](/packages/osteel-openapi-httpfoundation-testing)[ubirak/rest-api-behat-extension

Rest Api Extension for Behat

41327.0k2](/packages/ubirak-rest-api-behat-extension)[kielabokkie/jsonapi-behat-extension

Behat extension for testing JSON APIs

1516.5k](/packages/kielabokkie-jsonapi-behat-extension)

PHPackages © 2026

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