# java-diff-utils/java-diff-utils

Diff Utils library is an OpenSource library for performing the comparison / diff operations between texts or some kind of data: computing diffs, applying patches, generating unified diffs or parsing them, generating diff output for easy future displaying (like side-by-side view) and so on.

Repository: https://github.com/java-diff-utils/java-diff-utils
Canonical: https://ross.abutalabs.com/products/java-diff-utils
Homepage: https://java-diff-utils.github.io/java-diff-utils/
Language: Java
License: Apache-2.0
License Family: permissive
Topics: diff, java, unified-diffs, tools, inline, merge-text, java-diff-utils, computing-diffs, diff-algorithm, meyer
Last push: 2026-07-04T16:42:30+00:00

## Health v2 (maintenance only)
Score: 81/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 90, release rhythm 59, longevity 100
- inputs: {"age_days": 3443, "days_push": 60, "days_rel": 60, "gap_med": 293.5, "n_releases_24m": 3}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1544, forks 221 (observed 2026-08-28T04:05:01.297325+00:00)

## What it is
An open-source Java library for performing diff operations between texts or data: computing diffs, applying patches, generating and parsing unified diffs, and rendering diff output such as side-by-side views. It is a maintained fork of the original Google Code java-diff-utils project, published on Maven Central.

## Use cases
- compute the difference between two texts in java
- apply a patch to a file programmatically
- generate unified diff output
- parse unified diff files
- render side-by-side diff view
- show inline word-level diffs with markdown styling
- compare lists of arbitrary objects for changes

## When to choose
- you need diff/patch functionality inside a JVM application
- you want to display human-readable diff output like side-by-side or inline diffs
- you need to generate or parse unified diff format

## When to avoid
- you need a command-line diff tool rather than a library
- you work outside the JVM ecosystem
- you need binary or image diffing

## Facets
- artifact type: library
- maturity: active
- function: parser, developer-tools, serialization
- domain: developer-tools, text-editors, version-control, files
- platform: jvm, cross-platform
- tags: diff, unified-diff, patch, text-comparison, side-by-side, java

## Member repositories
- java-diff-utils/java-diff-utils (main) score 81

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:01.297325+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:30:38.434880+00:00, confidence not recorded.
  - readme: https://github.com/java-diff-utils/java-diff-utils (fetched 2026-08-28T04:05:01.297325+00:00, sha 45585d6a237e)
  - homepage: https://java-diff-utils.github.io/java-diff-utils/ (fetched 2026-08-29T11:31:48.912058+00:00, sha 0364dd869b96)
- Data as of 2026-08-30T08:39:29.467469+00:00.
