# webjerk-image-set-diff

> compares sets of images, and optionally generates pretty reports on pixel-perfect-mismatch

Latest version **0.3.0** (published 2018-04-27) · MIT license · 0 weekly downloads

## Install

```sh
npm install webjerk-image-set-diff
pnpm add webjerk-image-set-diff
yarn add webjerk-image-set-diff
bun add webjerk-image-set-diff
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.3.0 |
| Published | 2018-04-27 |
| First published | 2017-04-05 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 6 |
| Unpacked size | 98.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | cdaringe |
| Maintainers | cdaringe |

## Links

- npm: https://www.npmjs.com/package/webjerk-image-set-diff
- Repository: https://github.com/cdaringe/webjerk
- Homepage: https://github.com/cdaringe/webjerk#readme
- Issues: https://github.com/cdaringe/webjerk/issues
- npm.io page: https://npm.io/package/webjerk-image-set-diff

## Dependencies (6)

- [debug](https://npm.io/package/debug.md) ^3.1.0
- [lodash](https://npm.io/package/lodash.md) ^4.17.4
- [bluebird](https://npm.io/package/bluebird.md) ^3.5.0
- [fs-extra](https://npm.io/package/fs-extra.md) ^4.0.2
- [blink-diff](https://npm.io/package/blink-diff.md) ^1.0.13
- [webjerk-image-set-diff-reporter](https://npm.io/package/webjerk-image-set-diff-reporter.md) ^0.3.0

## Recent versions

- 0.3.0 (latest) — 2018-04-27
- 0.2.24 — 2018-04-27
- 0.2.23 — 2018-04-26
- 0.2.22 — 2018-04-25
- 0.2.21 — 2018-02-20
- 0.2.19 — 2017-12-14
- 0.2.17 — 2017-12-14
- 0.2.16 — 2017-12-14
- 0.2.15 — 2017-12-13
- 0.2.14 — 2017-12-13
- 0.2.13 — 2017-12-12
- 0.2.12 — 2017-12-07
- 0.2.10 — 2017-11-30
- 0.2.9 — 2017-11-23
- 0.2.8 — 2017-11-22
- … 8 more at https://npm.io/package/webjerk-image-set-diff/versions

## README

[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com) [![CircleCI](https://circleci.com/gh/cdaringe/webjerk.svg?style=svg)](https://circleci.com/gh/cdaringe/webjerk)

# webjerk-image-set-diff

compares two sets of images.

provide it folders, `refDir` & `runDir`, where both folders contain `png` files.  images are compared by basename. that is, `/refDir/test-image.png` would be compared to `/runDir/test-image.png`.

the comparisons use [blink-diff](https://github.com/yahoo/blink-diff) to compare images.

## usage

```js
var ImageSetDiffer = require('webjerk-image-set-diff')
var refDir = '/reference-images'
var runDir = '/test-run-images'
var idr = new ImageSetDiffer({
  refDir,
  runDir,
  report: true, // generate a report?
  allowNewImages: true, // allow new images into the ref set
  approveChanges: false // appove run images as new refs. migrate run/ images to ref/
})
var diffs = await idr.run() // blinkDifference objects
```

when mismatches are detected, `ImageSetDiffer::run` throws.

- `err.code` will equal `'EIMAGEDIFFS'`
- `err.differences` will have an array of blink difference data attached to the failing image

```js
console.log(err.differences)
// => [{ basename, blinkDiff, message }, ..., for, each, image, mismatch]
```

## config

some settings may be set from the env:

- `WEBJERK_ALLOW_NEW_IMAGES`, set to allow new images not found in the reference set
- `WEBJERK_APPROVE_CHANGES`, set to approve all image changes

---
_Source: https://npm.io/package/webjerk-image-set-diff · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
