# Install odiff with Homebrew, Nix

Very fast SIMD-first image comparison library (with nodejs API). Version 4.5.0 via Homebrew; verified 2026-07-23. Also installable with nix: nix profile install nixpkgs#odiff.

## Install

```sh
sudo av install brew:odiff
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install odiff
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#odiff
```

  Evidence: nixpkgs package indexes: pkgs/by-name/od/odiff/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:odiff
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/odiff>
- **Version:** 4.5.0
- **Source summary:** Very fast SIMD-first image comparison library (with nodejs API)
- **Homepage:** <https://github.com/dmtrKovalenko/odiff>
- **Repository:** <https://github.com/dmtrKovalenko/odiff>
- **License:** MIT
- **Source archive:** <https://github.com/dmtrKovalenko/odiff/archive/refs/tags/v4.5.0.tar.gz>
- **Last updated:** 2026-07-23T03:37:26Z
- **Generated:** 2026-08-04T22:13:35+00:00

## Executables

- odiff (cli)
- odiff (alias)

## Build dependencies

- zig

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-08-04
- Package-manager version: 4.5.0
- Package-manager updated: 2026-07-23
- Local data: ok
- Upstream repository: https://github.com/dmtrKovalenko/odiff
- Upstream latest detected: v4.5.0 (current)
## Project history and usage

odiff is a native image-comparison CLI and Node.js-facing tool aimed at visual regression testing and screenshot diffing. Its package story is about speed and portability: the README describes a move from OCaml to Zig with SIMD paths for SSE2, AVX2, AVX512, and NEON.

### Project history

The public GitHub repository was created on 2020-11-04. The README describes odiff as originally written in OCaml and later implemented in Zig, keeping the same focus on fast pixel-by-pixel visual difference checks for screenshots, photos, AI-generated images, and other highly similar image pairs.

### Adoption history

The README lists integration points beyond the bare CLI, including Node.js bindings, a persistent server mode to avoid process startup overhead, Playwright support through playwright-odiff, Cypress support through cypress-odiff, and visual regression services such as Argos, LostPixel, and Visual Regression Tracker.

Homebrew and Nix packaging make the odiff binary available outside npm-centered workflows, while the Node.js API keeps it usable inside JavaScript test suites.

### How it is used

Users compare two image paths and optionally write a PNG diff image. In test automation, Node.js callers use compare() or ODiffServer to run repeated comparisons with options for thresholds, anti-aliasing, ignored regions, layout mismatch handling, diff overlays, and memory reduction.

### Why package nerds care

odiff is interesting because visual testing often hides native image diff engines behind JavaScript test frameworks. Packaging the native binary directly lets Playwright, Cypress, and standalone CI users share one fast comparator instead of each framework carrying a separate pure-JS pixel diff path.

### Timeline

- 2020-11-04: public GitHub repository created.
- 2026-07-01: GitHub API metadata listed Zig as the primary language and MIT licensing.

### Related projects

- The README names framework adapters and services including playwright-odiff, cypress-odiff, Argos, LostPixel, Visual Regression Tracker, and OSnap.

### Sources

- <https://api.github.com/repos/dmtrKovalenko/odiff>
- <https://formulae.brew.sh/formula/odiff>
- <https://github.com/dmtrKovalenko/odiff>
- <https://github.com/dmtrKovalenko/odiff/releases>
- <https://raw.githubusercontent.com/dmtrKovalenko/odiff/main/README.md>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** odiff
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - odiff: normalized package name match | nixpkgs package indexes: pkgs/by-name/od/odiff/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://pkg.so/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://pkg.so/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://pkg.so/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://pkg.so/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [zig](https://pkg.so/brew/zig/) - Build dependency declared by Homebrew.
- [lcov](https://pkg.so/brew/lcov/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [bats-core](https://pkg.so/brew/bats-core/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [allure](https://pkg.so/brew/allure/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [kcov](https://pkg.so/brew/kcov/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [mockolo](https://pkg.so/brew/mockolo/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [mockery](https://pkg.so/brew/mockery/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [pytest](https://pkg.so/brew/pytest/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [conftest](https://pkg.so/brew/conftest/) - Shares pkgdb curated category or tags: cli, developer-tools, testing.
- [lost-pixel](https://pkg.so/npm/lost-pixel/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, odiff, regression.
- [reg-suit](https://pkg.so/npm/reg-suit/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, regression, testing.
- [cypress-image-diff-html-report](https://pkg.so/npm/cypress-image-diff-html-report/) - Both packages work with overlapping file formats or content types. Shared terms: cli, comparison, developer, developer-tools, image.

## Combined YAML source

View the package source record on GitHub. [combined/odiff.yml](https://github.com/mxcl/pkgdb/blob/main/combined/odiff.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- pkgdb category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
