Ross ROSS = Recommend OSS · open-source software intelligence for agents

ra1028/DifferenceKit

💻 A fast and flexible O(n) difference algorithm framework for Swift collection. observed · 2026-08-28

github.com/ra1028/DifferenceKit · homepage · Swift · Apache-2.0 (permissive) observed · 2026-08-28

Health v2 · maintenance only

63/100

  • Activity 89
  • Release rhythm 8
  • Longevity 100
How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.

  • gap_med: n/a
  • age_days: 2952
  • days_rel: n/a
  • days_push: 71
  • n_releases_24m: 0

Full methodology

Adoption not part of the score

3666 stars · 242 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded

DifferenceKit is a Swift framework implementing a fast O(n) diffing algorithm based on Paul Heckel's technique for Swift collections. It computes all kinds of diffs (insertions, deletions, moves, replacements) needed for animated batch updates in list UIs like UITableView and UICollectionView, splitting diffs into stages to avoid crashes.

Use cases

  • animate table view updates when data changes
  • diff two arrays in Swift efficiently
  • avoid crashes in performBatchUpdates with collection view
  • compute changesets for sectioned collections with duplicates
  • build reactive list UIs with minimal reloads

When to choose

  • you need linear-time diffing for Swift collections
  • you animate batch updates in UIKit, AppKit, or Texture list UIs
  • you need a standalone diff engine for a component-driven UI framework

When to avoid

  • you are not developing in Swift or on Apple platforms
  • you need text/file diffing rather than collection element diffing
  • you want a batteries-included reactive data source library rather than just the algorithm

Facets

library · maturity stable

ui-components developer-tools mobile-development developer-tools cross-platform cross-platform diffing paul-heckel-algorithm uitableview uicollectionview batch-updates swift-package-manager cocoapods algorithm algorithms ios macos swift

2 sources

Member repositories

RepositoryRoleHealth v2
ra1028/DifferenceKitmain63

For agents

markdown · JSON · MCP: product_card(name="ra1028/DifferenceKit")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem