PHPackages                             emanueleminotto/schemer - 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. [Validation &amp; Sanitization](/categories/validation)
4. /
5. emanueleminotto/schemer

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

emanueleminotto/schemer
=======================

json-schema.org based validation and formatting

16PHP

Since Sep 20Pushed 10y ago1 watchersCompare

[ Source](https://github.com/EmanueleMinotto/schemer)[ Packagist](https://packagist.org/packages/emanueleminotto/schemer)[ RSS](/packages/emanueleminotto-schemer/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

schemer
=======

[](#schemer)

[![Build Status](https://camo.githubusercontent.com/6771a9a4d23907259398f528b0705a1796bfbd77a22cd1e1af595cb4df90ebff/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f456d616e75656c654d696e6f74746f2f736368656d65722e7376673f7374796c653d666c6174)](https://travis-ci.org/EmanueleMinotto/schemer)[![SensioLabs Insight](https://camo.githubusercontent.com/eb346339e621af7952cd5ab73de0faf2faea1590ff151b67c9376978a8dfa267/68747470733a2f2f696d672e736869656c64732e696f2f73656e73696f6c6162732f692f38653564356566632d373137352d346266302d623136342d3734663366633462643362662e7376673f7374796c653d666c6174)](https://insight.sensiolabs.com/projects/8e5d5efc-7175-4bf0-b164-74f3fc4bd3bf)[![Coverage Status](https://camo.githubusercontent.com/847808299b80b6fd7279f1fd35cb50dcd05a55e908637a4c5befeab9fe9976c2/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f456d616e75656c654d696e6f74746f2f736368656d65722e7376673f7374796c653d666c6174)](https://coveralls.io/r/EmanueleMinotto/schemer)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/af25abc34fcb123aeb388b0033c716c86b7ce60a841cfe8f02fa47a3ad5ecfc8/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f456d616e75656c654d696e6f74746f2f736368656d65722e7376673f7374796c653d666c6174)](https://scrutinizer-ci.com/g/EmanueleMinotto/schemer/)[![Total Downloads](https://camo.githubusercontent.com/7ae0075672171ff2e51631dbec289bddc5fbfc6fb1957f9a4ee49573220a9006/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f656d616e75656c656d696e6f74746f2f736368656d65722e7376673f7374796c653d666c6174)](https://packagist.org/packages/emanueleminotto/schemer)

A command line tool that helps you validating and formatting JSON configuration files. File formatting is based on a [JSON schema](http://json-schema.org/) file.

Supported shortcuts (validation and formatting):

- [Bower](http://bower.io/)
- [Box 2](http://box-project.org/)
- [Component](https://github.com/componentjs/guide)
- [Composer](https://getcomposer.org/)
- [JSHint](http://jshint.com/)
- [Mozilla's contribute.json](https://contribute.paas.allizom.org/)
- *More coming soon...*

Install
-------

[](#install)

Install the schemer CLI tool adding `emanueleminotto/schemer` to your global composer.json or from CLI:

```
$ composer global require emanueleminotto/schemer

```

> **Attention!** Remember to add `$COMPOSER_HOME/vendor/bin` to your `$PATH` (*[ref](https://getcomposer.org/doc/03-cli.md#global)*).

Usage
-----

[](#usage)

```
# validation ...
$ schemer validate https://raw.githubusercontent.com/composer/composer/master/res/composer-schema.json composer.json
# ... with use shortcuts
$ schemer validate:bower bower.json

# formatting ...
$ schemer format https://raw.githubusercontent.com/composer/composer/master/res/composer-schema.json composer.json
# ... with use shortcuts
$ schemer format:bower bower.json

# schemer available commands
$ schemer list
```

Testing
-------

[](#testing)

```
$ vendor/bin/phpunit
```

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/30b6fbd038f22a54716027eb7ce30c6cafd8e59c138ae58b3c2516c34ccfef7f?d=identicon)[EmanueleMinotto](/maintainers/EmanueleMinotto)

---

Top Contributors

[![EmanueleMinotto](https://avatars.githubusercontent.com/u/417201?v=4)](https://github.com/EmanueleMinotto "EmanueleMinotto (13 commits)")

### Embed Badge

![Health badge](/badges/emanueleminotto-schemer/health.svg)

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

###  Alternatives

[webmozart/assert

Assertions to validate method input/output with nice error messages.

7.6k894.0M1.2k](/packages/webmozart-assert)[bensampo/laravel-enum

Simple, extensible and powerful enumeration implementation for Laravel.

2.0k15.9M104](/packages/bensampo-laravel-enum)[swaggest/json-schema

High definition PHP structures with JSON-schema based validation

48612.5M73](/packages/swaggest-json-schema)[stevebauman/purify

An HTML Purifier / Sanitizer for Laravel

5325.6M19](/packages/stevebauman-purify)[ashallendesign/laravel-config-validator

A package for validating your Laravel app's config.

217905.3k5](/packages/ashallendesign-laravel-config-validator)[crazybooot/base64-validation

Laravel validators for base64 encoded files

1341.9M8](/packages/crazybooot-base64-validation)

PHPackages © 2026

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