# jflinter/Dwifft

Swift Diff

Repository: https://github.com/jflinter/Dwifft
Canonical: https://ross.abutalabs.com/products/dwifft
Language: Swift
License: MIT
License Family: permissive
Topics: swift, diff, algorithm
Last push: 2023-05-04T13:43:07+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 4028, "days_push": 1217, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1848, forks 147 (observed 2026-08-28T04:05:43.673641+00:00)

## What it is
Dwifft is a small Swift library that computes the diff (edit operations) between two collections using the Longest Common Subsequence algorithm. It also provides UIKit bindings that automatically animate UITableView and UICollectionView updates when the underlying data changes.

## Use cases
- animate table view updates when data changes
- compute diff between two arrays in Swift
- avoid reloadData and keep scroll position
- handle section insertions and deletions in UITableView
- calculate edit operations between two collections

## When to choose
- you have a UITableView or UICollectionView backed by an array that changes over time
- you need animated row/section insertions and deletions instead of reloadData
- you want a lightweight, pure-Swift LCS diff implementation

## When to avoid
- you need cross-platform diffing outside Apple's UIKit ecosystem
- your project uses SwiftUI rather than UITableView/UICollectionView
- you need extremely large-scale diffing with performance beyond LCS

## Facets
- artifact type: library
- maturity: maintenance
- function: ui-components, animation
- domain: mobile-development, apple-ecosystem
- platform: -
- tags: diff, longest-common-subsequence, uitableview, uicollectionview, swift, algorithm, algorithms, ios, apple

## Member repositories
- jflinter/Dwifft (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:43.673641+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-30T03:17:48.490410+00:00, confidence not recorded.
  - readme: https://github.com/jflinter/Dwifft (fetched 2026-08-28T04:05:43.673641+00:00, sha 654c093438d5)
- Data as of 2026-08-30T08:39:29.467469+00:00.
