PHPackages                             mariya/gendiff - 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. [CLI &amp; Console](/categories/cli)
4. /
5. mariya/gendiff

ActiveLibrary[CLI &amp; Console](/categories/cli)

mariya/gendiff
==============

The second PHP project, utility to find differences in configuration files.

v6.0.1(7y ago)023PHPCI failing

Since Apr 8Pushed 6y agoCompare

[ Source](https://github.com/Mariya1316/project-lvl2-s459)[ Packagist](https://packagist.org/packages/mariya/gendiff)[ RSS](/packages/mariya-gendiff/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependencies (5)Versions (10)Used By (0)

GenDiff
=======

[](#gendiff)

[![Maintainability](https://camo.githubusercontent.com/412a4f0a1739b9e1a1bc274e1685d66c2ab53a07aae58d286d9637897c06a40b/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f31623966346433653437336163356438353130392f6d61696e7461696e6162696c697479)](https://codeclimate.com/github/Mariya1316/project-lvl2-s459/maintainability)[![Build Status](https://camo.githubusercontent.com/4895ce07c5a65879f6bd235443147350fd8871a4d5426b3eb59dbc5f1adf804e/68747470733a2f2f7472617669732d63692e6f72672f4d6172697961313331362f47656e446966662e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/Mariya1316/GenDiff)

A PHP console utility to find differences in configuration files.

### Utility features:

[](#utility-features)

- Multi-format support
- Report generation as plain text, pretty и json

Installation
------------

[](#installation)

Via Composer

```
$ composer require mariya/gendiff

```

Usage
-----

[](#usage)

Get help:

```
$ gendiff -h

```

Generate the difference between two files (`json`, `yaml`):

```
$ gendiff before.json after.json

```

The utility supports different output formats. By default, the report is generated as `pretty`. Example:

```
$ gendiff before.json after.json

{
    host: hexlet.io
  + timeout: 20
  - timeout: 50
  - proxy: 123.234.53.22
  + verbose: true
}

```

Using the option `--format` with value `plain` to get a report in the following format:

```
$ gendiff --format plain before.json after.json

Property 'timeout' was changed. From '50' to '20'
Property 'proxy' was removed
Property 'verbose' was added with value: 'true'

```

In addition, you can get the report in `json` format using the appropriate option value:

```
$ gendiff --format json before.json after.json

{"0":{"key":"host","type":"unchanged","valueBefore":"hexlet.io","valueAfter":"hexlet.io","children":null},"1":{"key":"timeout","type":"changed","valueBefore":50,"valueAfter":20,"children":null},"2":{"key":"proxy","type":"deleted","valueBefore":"123.234.53.22","valueAfter":null,"children":null},"3":{"key":"verbose","type":"added","valueBefore":null,"valueAfter":true,"children":null}}

```

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity65

Established project with proven stability

 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

Every ~1 days

Total

9

Last Release

2585d ago

Major Versions

v1.0.0 → v2.0.02019-04-09

v2.0.2 → v3.0.02019-04-13

v3.0.0 → v4.0.02019-04-14

v4.0.0 → v5.0.02019-04-15

v5.0.0 → v6.0.02019-04-15

### Community

Maintainers

![](https://www.gravatar.com/avatar/de00fb32f4699d0273569f2645c3a3baf6a420a119b6719adfaa0a07905f35f7?d=identicon)[Mariya1316](/maintainers/Mariya1316)

---

Top Contributors

[![Mariya1316](https://avatars.githubusercontent.com/u/34185257?v=4)](https://github.com/Mariya1316 "Mariya1316 (34 commits)")

---

Tags

phpconsolefileprojectdifferencegendiff

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/mariya-gendiff/health.svg)

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

###  Alternatives

[nunomaduro/termwind

It's like Tailwind CSS, but for the console.

2.5k239.8M286](/packages/nunomaduro-termwind)[seregazhuk/php-watcher

Automatically restart PHP application once the source code changes

394137.8k4](/packages/seregazhuk-php-watcher)[nunomaduro/laravel-console-task

Laravel Console Task is a output method for your Laravel/Laravel Zero commands.

2582.1M11](/packages/nunomaduro-laravel-console-task)[mehrancodes/laravel-harbor

A CLI tool to Quickly create On-Demand preview environment for your apps.

9989.0k](/packages/mehrancodes-laravel-harbor)[alecrabbit/php-cli-snake

Lightweight cli spinner with zero dependencies

29211.3k5](/packages/alecrabbit-php-cli-snake)

PHPackages © 2026

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